我正在执行社区相似度值的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
进行采样?
答案 0 :(得分:0)
在评论中关注@ 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]