我正在执行社区相似度的bootstrap分析。我有一个物种计数矩阵,其中列代表独特的样本,行代表独特的物种。下面是一个示例:
#generate a matrix with 20 columns, 30 rows, random values
set.seed(69) #for reproducibility.
otu <-matrix(rpois(20*30, lambda = 2), ncol=20) 我有两个向量,它们是与唯一样本相关的环境协变量。因此,每个向量的长度为20。
v1 <- rnorm(20)
v2 <- rnorm(20)我想创建一个新的物种观察矩阵,它随机采样otu矩阵的列,并进行替换。我可以很容易地做到这一点。
#randomnly sample the columns of the otu matrix with replacement.
otu.boot <- otu[,sample(ncol(otu),size=ncol(otu),replace=TRUE)]我的问题是,如何以与随机采样的替换矩阵相同的顺序对向量v1和v2进行采样?
发布于 2017-09-08 02:54:45
遵循@lmo在评论中的建议:
#establish a sample order with replacement.
myOrder <- sample(ncol(otu), replace = T)
#go ahead and submsample both the otu matrix and vectors in that order.
otu.boot <- otu[,myOrder]
v1.boot <- v1[myOrder]
v2.boot <- v2[myOrder]https://stackoverflow.com/questions/46102277
复制相似问题