gpt4 book ai didi

r - SpadeR::SimilarityMult Abundance 基于相异误差

转载 作者:行者123 更新时间:2023-12-03 19:09:19 24 4
gpt4 key购买 nike

我正在尝试获取由来自多个组合的样本组成的群落丰度矩阵的多样性指数/估计量和相异性度量。具体来说,我正在运行 Anne Chao 的功能:SimilarityMult (估计 N 个社区之间的各种相似性指数)。包括丰富度和基于丰度的 N 社区相似度指数”--Anne Chao 的 SpadeR 包。
我使用包:

library(devtools)
install_github('AnneChao/SpadeR')
library(SpadeR)
library(vegan)
问题
我的社区丰度矩阵设置:行中有 108 个物种,列中有 144 个站点/样本。
我跑:
SimilarityMult(bugs,"abundance",q=1,nboot=200,"relative")
产生:

ERROR CODE "Error in rmultinom(nboot, sum(X2), p[, 2]) : NA inprobability vector"


我跑:
SimilarityMult(bugs,"abundance",q=2,nboot=200,"relative")
产生:

ERROR CODE "Error in rmultinom(1, ni[k], p[, k]) : NA in probabilityvector"


下面我提供了可以从中重新创建我的数据矩阵并用于运行有问题的代码以查找错误源的信息。我共享数据的一个子集,其中包括前 20 行和前 25 列。
我跑:
dput(bugs[1:20,c(1:25)])
输出:
bugs  <-  structure(list(V1 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 
0L, 0L, 0L, 8L, 0L, 0L, 12L, 0L, 0L, 0L), V2 = c(0L, 0L, 0L,
7L, 0L, 1L, 0L, 5L, 0L, 0L, 0L, 0L, 2L, 235L, 0L, 0L, 453L, 8L,
0L, 0L), V3 = c(0L, 0L, 0L, 13L, 0L, 0L, 0L, 2L, 2L, 0L, 0L,
1L, 0L, 82L, 0L, 0L, 60L, 1L, 8L, 0L), V4 = c(0L, 0L, 0L, 4L,
0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 1051L, 0L, 0L, 48L, 58L,
0L, 0L), V5 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 47L, 0L, 0L, 5L, 3L, 0L, 0L), V6 = c(0L, 0L, 0L, 18L, 0L,
3L, 0L, 7L, 5L, 0L, 0L, 3L, 1L, 271L, 0L, 0L, 176L, 21L, 0L,
0L), V7 = c(0L, 1L, 0L, 16L, 0L, 21L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 2L, 0L, 0L, 35L, 0L, 0L, 0L), V8 = c(0L, 0L, 0L, 17L, 1L,
1L, 0L, 2L, 3L, 0L, 0L, 0L, 0L, 52L, 0L, 1L, 28L, 32L, 0L, 0L
), V9 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L,
29L, 0L, 0L, 8L, 3L, 8L, 0L), V10 = c(0L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 2L, 0L, 25L, 0L, 0L, 14L, 0L, 0L, 0L), V11 = c(0L,
12L, 0L, 14L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 61L, 0L, 0L,
32L, 0L, 6L, 0L), V12 = c(0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 152L, 0L, 0L, 8L, 3L, 0L, 0L), V13 = c(0L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 15L,
0L, 0L, 0L), V14 = c(0L, 0L, 0L, 14L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 67L, 0L, 0L, 23L, 10L, 0L, 0L), V15 = c(0L, 2L, 0L,
5L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 2L, 1L, 0L, 1L, 2L, 4L,
0L), V16 = c(0L, 0L, 1L, 10L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L,
0L, 30L, 0L, 0L, 2L, 18L, 0L, 0L), V17 = c(0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 3L, 2L, 2L, 0L),
V18 = c(0L, 0L, 0L, 1L, 0L, 1L, 0L, 4L, 0L, 0L, 0L, 0L, 0L,
14L, 0L, 0L, 37L, 10L, 0L, 0L), V19 = c(0L, 1L, 0L, 13L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 10L, 0L, 0L, 14L, 26L,
0L, 0L), V20 = c(0L, 0L, 0L, 6L, 0L, 2L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 18L, 0L, 0L, 2L, 12L, 0L, 0L), V21 = c(0L, 0L,
0L, 0L, 0L, 0L, 2L, 0L, 0L, 0L, 0L, 0L, 0L, 41L, 0L, 0L,
13L, 0L, 0L, 0L), V22 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 101L, 0L, 0L, 15L, 5L, 0L, 0L), V23 = c(0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 15L, 0L,
0L, 17L, 0L, 1L, 0L), V24 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 2L, 0L, 0L, 0L, 2L, 0L, 0L), V25 = c(0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 7L, 0L, 0L, 0L, 0L, 134L, 0L,
0L, 19L, 0L, 0L, 0L)), row.names = c("1", "2", "3", "4",
"5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15",
"16", "17", "18", "19", "20"), class = "data.frame")
生成数据框
bugs
将数据帧“错误”输入 SimilarityMult以上功能。
我不明白为什么代码失败。我该怎么做才能使该功能正常工作?对此事的任何解决方案/建议将不胜感激。
谢谢!

最佳答案

我花了很长时间试图解决您的问题,包括查看 source codeissues noted on GitHub .我注意到你也在那里打开了一个问题,但我怀疑作者已经放弃了这个项目。
我不知道为什么,但如果我们删除社区 1517 ,您的代码将执行。

SimilarityMult(bugs[,-c(15,17)],"abundance",q=1,nboot=200,"relative")
#...
# Pairwise similarity matrix:
#
# Horn(i,j) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
# 1 1.000 0.991 0.931 0.760 0.761 0.952 0.648 0.802 0.796 0.939 0.869 0.715 0.877 0.849 0.555 0.889 0.657 0.571 0.893 0.819 0.983 0.463 0.820
# 2 1.000 0.900 0.644 0.814 0.930 0.638 0.756 0.772 0.912 0.799 0.734 0.954 0.838 0.634 0.912 0.616 0.654 0.875 0.813 0.961 0.669 0.774
# 3 1.000 0.764 0.837 0.955 0.611 0.846 0.887 0.926 0.924 0.808 0.833 0.910 0.723 0.842 0.665 0.732 0.891 0.843 0.959 0.597 0.841
# 4 1.000 0.993 0.830 0.286 0.763 0.834 0.849 0.731 0.996 0.513 0.875 0.797 0.629 0.601 0.790 0.909 0.984 0.770 0.873 0.945
# 5 1.000 0.918 0.265 0.807 0.890 0.877 0.800 0.985 0.445 0.914 0.795 0.658 0.573 0.774 0.928 0.998 0.792 0.801 0.948
# 6 1.000 0.623 0.891 0.841 0.955 0.859 0.871 0.853 0.950 0.803 0.911 0.732 0.817 0.926 0.920 0.938 0.797 0.893
# 7 1.000 0.579 0.341 0.484 0.622 0.299 0.771 0.541 0.345 0.656 0.592 0.457 0.404 0.310 0.587 0.175 0.309
# 8 1.000 0.776 0.784 0.776 0.749 0.695 0.931 0.923 0.872 0.911 0.932 0.769 0.788 0.782 0.888 0.722
# 9 1.000 0.842 0.843 0.837 0.623 0.849 0.723 0.707 0.605 0.722 0.856 0.884 0.888 0.764 0.825
# 10 1.000 0.863 0.843 0.738 0.875 0.634 0.773 0.574 0.628 0.946 0.904 0.940 0.528 0.902
# 11 1.000 0.795 0.766 0.879 0.687 0.728 0.676 0.681 0.855 0.802 0.901 0.497 0.792
# 12 1.000 0.394 0.868 0.761 0.561 0.491 0.753 0.912 0.980 0.743 0.743 0.953
# 13 1.000 0.698 0.354 0.895 0.613 0.391 0.644 0.547 0.848 0.352 0.558
# 14 1.000 0.889 0.794 0.811 0.887 0.884 0.909 0.847 0.828 0.843
# 15 1.000 0.682 0.848 0.956 0.664 0.757 0.571 0.927 0.644
# 16 1.000 0.792 0.704 0.706 0.681 0.847 0.743 0.597
# 17 1.000 0.863 0.530 0.565 0.614 0.829 0.439
# 18 1.000 0.647 0.742 0.580 0.913 0.618
# 19 1.000 0.948 0.904 0.550 0.946
# 20 1.000 0.835 0.794 0.957
# 21 1.000 0.486 0.833
# 22 1.000 0.554
# 23 1.000
我知道这不太可能完全解决您的问题,但希望它能帮助您或其他人解决问题。

关于r - SpadeR::SimilarityMult Abundance 基于相异误差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62700947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com