From c3fd7d03d617e8fdce09c67c974e1f5becc27911 Mon Sep 17 00:00:00 2001 From: Francesco Sabatini <francesco.sabatini@idiv.de> Date: Wed, 19 Aug 2020 14:15:28 +0200 Subject: [PATCH] Fixed bug on exclusion of species without traits --- 99_HIDDEN_functions.R | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/99_HIDDEN_functions.R b/99_HIDDEN_functions.R index 1b6bcfe..c5c919a 100644 --- a/99_HIDDEN_functions.R +++ b/99_HIDDEN_functions.R @@ -41,13 +41,14 @@ get.corXY.bootstrap <- function(comm, traits, trait.sel="all", bootstrap=199){ W.beals <- as.data.frame(beals(comm, include=T, type=2)) # permute traits ### Create vector of species to resample from, which exclude species with NAs - ids <- 1:nrow(traits) - id.nas <- ids[which(rowSums(is.na(traits))>0)] + traits.ii <- traits[,ii, drop=F] + ids <- 1:nrow(traits.ii) + id.nas <- ids[which(rowSums(is.na(traits.ii))==ncol(traits.ii))] toresample <- ids[!ids %in% id.nas] ## create list of indices of permuted traits, but without shuffling traits with missing data ## the length of the list is = to the number of bootstraps index.traits <- lapply(1:(bootstrap+1), function(x){ - out <- rep(NA, nrow(traits)) + out <- rep(NA, nrow(traits.ii)) out[id.nas] <- id.nas out[is.na(out)] <- sample(toresample, replace=F) return(out) -- GitLab