首页 > 解决方案 > R vegan vegdist 不计算大多数地块之间的距离

问题描述

我正在尝试为我的数据创建一些 MDS 图。我正在使用 vegan 包的 vegdist ,它不会产生任何错误,但是当我查看生成的矩阵时,下对角线处到处都是空值,只有上对角线应该是空的。

我的代码:

data <- read.csv("nematoda.csv",header=TRUE)   # 180 samples with 22 values, 6 of which are env variables
data <- data[apply(data[,-1:-6],1,function(x) !all(x==0)),] # to get rid of sites with no species information

# Transform data into relative abundances
data.total <- decostand(data[,7:length(data)], method="total")

# Distance with Bray-Curtis
data.bray <- vegdist(data.total, method="bray")

data.bray

             1          2          3          5          7          8         10         11         12         13
2   0.00000000                                                                                                   
3   0.00000000 0.00000000                                                                                        
5   0.41421356 0.41421356 0.41421356                                                                             
7   0.00000000 0.00000000 0.00000000 0.41421356                                                                  
8   0.00000000 0.00000000 0.00000000 0.41421356 0.00000000                                                       
10  0.00000000 0.00000000 0.00000000 0.41421356 0.00000000 0.00000000                                            
            14         15         16         17         18         20         21         22         23         24
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
            25         27         28         29         30         31         32         33         34         36
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
            37         38         40         42         44         45         46         47         48         49
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
            50         51         52         53         55         56         57         58         60         61
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
            62         63         64         65         66         67         68         69         70         71
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
            72         73         75         76         77         78         79         80         81         82
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
            83         84         85         86         87         88         89         90         91         93
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
            94         95         96         97         98         99        100        101        102        103
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
           104        106        107        108        109        110        111        112        115        117
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
           118        119        120        121        122        124        125        126        127        128
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
           129        130        131        132        133        134        135        136        137        138
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
           139        140        141        142        143        144        145        147        148        149
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
           150        151        152        153        154        155        156        157        158        159
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
           160        161        162        163        164        165        166        167        168        169
2                                                                                                                
3                                                                                                                
5                                                                                                                
7                                                                                                                
8                                                                                                                
10                                                                                                               
           170        171        172        173        174        175        176        177        179
2                                                                                                     
3                                                                                                     
5                                                                                                     
7                                                                                                     
8                                                                                                     
10                                                                                                    
 [ reached getOption("max.print") -- omitted 153 rows ]

我尝试了不同的转换,但都一样。当我使用来自不同项目的示例数据集甚至是朋友的数据框时 - 使用完全相同的代码,我看到了他们的整个表......不知道为什么我的会导致问题。我的很多物种丰度值都是 0,但是这会导致不完整的距离矩阵吗?

我还使用从一开始就给出的物种信息尝试了我的数据框(即不使用 data[,-1:-6] 从数据框中提取它,这给了我完全相同的、不完整的输出。

此外,我确实有很多物种出现“一次”(所以我的数据框中有很多 1),我怀疑这可能会导致转换问题?虽然我不知道应该如何处理转换。

标签: r

解决方案


推荐阅读