如何根据R中另一个矩阵的值为矩阵赋值?

时间:2015-11-06 17:37:49

标签: r matrix

我的问题可能措辞不多,但希望我能更好地解释它。在R中,我创建了一个矩阵并为其赋值如下:

sample<-matrix(data=rbinom(10000,1,0.3), nrow=100, ncol=100, byrow=TRUE)

现在我想弄清楚如何将泊松分布后的值分配给矩阵中的每个值== 1

这是我给出的任务:

你有一个100米x 100米的网格,1米x 1米的单元格。您想要选择约30%的细胞进行采样。模拟要采样的网格单元格。你抽样了几个细胞?

您可以计算每个采样网格单元格中的蜗牛。你发现一篇论文报告的平均蜗牛密度为15 / m2。根据平均蜗牛密度15 / m2模拟您在每个网格单元中计算的蜗牛数。平均而言,每个网格单元计数了多少只蜗牛?在所有采样的网格单元中,您计算​​了多少只蜗牛?

不寻找任何人为我做我的工作,只是在正确的方向上的一点将帮助我很多。谢谢。

1 个答案:

答案 0 :(得分:4)

您可以使用以下命令查找非零单元格的数量:

num_cells <- sum(sample)

此时,您可以使用rpois重新分配非零值:

sample[sample == 1] <- rpois(num_cells, 15)