我是一个新的R用户,所以我提前道歉我的无知。我有一个流大型无脊椎动物数据的社区矩阵(作为行标题和物种作为列标题的图)。我希望将数据稀释到每个小区500个人,进行1000次,然后计算流健康度量(例如%EPT)。在这一点上,我还没有成功地建立一个循环来稀释1000倍(甚至10倍)的数据。我使用一个简化的数据集(6种,12个图)来找出正确的代码,因为我的社区矩阵有> 100种。我使用这个网站(http://ichthyology.usm.edu/courses/multivariate/diversity.R)作为开发正确代码的模板。预先感谢您对此代码的任何帮助。Rarefaction,社区矩阵和for循环
我有6种矩阵,12个地块
comm
X Attenella.margarita Baetidae Baetis.sp. Baetis.tricaudatus Caenis.sp. Diphetor.hageni
1 1 0 0 0 0 0 36
2 2 0 0 0 1009 0 682
3 3 51 51 0 609 0 406
4 4 0 0 40 0 0 0
5 5 0 0 68 0 68 203
6 6 0 0 0 1244 0 0
7 7 0 0 2090 0 0 0
8 8 0 0 11 0 0 0
9 9 0 0 0 4621 0 0
10 10 0 0 0 1515 0 0
11 11 0 0 0 33 0 0
12 12 0 0 0 116 0 0
我可以用纯素包,但我想这样做反复
rarefy
这组数据1X
rrarefy(comm, sample=5)
X Attenella.margarita Baetidae Baetis.sp. Baetis.tricaudatus Caenis.sp. Diphetor.hageni
[1,] 0 0 0 0 0 0 5
[2,] 0 0 0 0 4 0 1
[3,] 0 2 0 0 2 0 1
[4,] 0 0 0 5 0 0 0
[5,] 0 0 0 1 0 1 3
[6,] 0 0 0 0 5 0 0
[7,] 0 0 0 5 0 0 0
[8,] 3 0 0 2 0 0 0
[9,] 0 0 0 0 5 0 0
[10,] 0 0 0 0 5 0 0
[11,] 0 0 0 0 5 0 0
[12,] 0 0 0 0 5 0 0
但我没有运气,当试图做一个循环10次
> ComLoop = 0
> for (i in 1:10) ComLoop[i] = rrarefy(comm, sample=5)
Warning in ComLoop[i] = rrarefy(comm, sample = 5) :
如果您在一两天内没有得到答案,您可以尝试发布(将此链接指向此链接)到[email protected]列表,您可以在其中找到其他更好地理解问题背景的人... –