首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过替换随机采样矩阵的列,然后以相同的顺序采样向量的元素-R

通过替换随机采样矩阵的列,然后以相同的顺序采样向量的元素-R
EN

Stack Overflow用户
提问于 2017-09-08 01:40:39
回答 1查看 308关注 0票数 0

我正在执行社区相似度的bootstrap分析。我有一个物种计数矩阵,其中列代表独特的样本,行代表独特的物种。下面是一个示例:

代码语言:javascript
复制
#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。

代码语言:javascript
复制
v1 <- rnorm(20)
v2 <- rnorm(20)

我想创建一个新的物种观察矩阵,它随机采样otu矩阵的列,并进行替换。我可以很容易地做到这一点。

代码语言:javascript
复制
#randomnly sample the columns of the otu matrix with replacement.
otu.boot <- otu[,sample(ncol(otu),size=ncol(otu),replace=TRUE)]

我的问题是,如何以与随机采样的替换矩阵相同的顺序对向量v1v2进行采样?

EN

回答 1

Stack Overflow用户

发布于 2017-09-08 02:54:45

遵循@lmo在评论中的建议:

代码语言:javascript
复制
#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]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46102277

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档