FUN(X [[i]],...)中的错误:仅在纯素食主义者中运行MDS时,在具有所有数字变量的数据帧上定义

时间:2018-09-01 07:45:17

标签: r error-handling mds

您好,我正在尝试运行MDS来创建绘图 这些是我的数据

                 A       B     C      D
B_2016           54.67  3.67    10    1
Emb_2016           37.67    10.33   1.67    10.33
Fes_2016           19.33    32.67   2.67    2.33
Ku_2016          0       5.33   1.67    28.33
Ra_2016          6      20.33   11.33   29.33
Ud_2016          8       5.33   1.33    4.33
Ve _2016           84.67     4.67   1       21
Ba _2017         0       3    2     6.97
Emb _2017          0         4    2.77  4.47
Fes_2017           0         0.01   0       0
Ku_2017          0       0.1    0.02    0.16
Ra_2017          0       0    1     11
Ud_2017          0       5    3     4
Ve_2017          0       0    0     0

这是我的代码

mds<-metaMDS(macnally, k=2, distance="bray", autotransform=FALSE, trymax=100)

但是我得到这个错误:

  

FUN(X [[i]],...)中的错误:     仅在具有所有数字变量的数据框上定义   另外:警告消息:   在Ops.factor(左,右)中:“ <”对因子没有意义

可以帮助我,以便随后进行绘制吗?非常感谢

1 个答案:

答案 0 :(得分:1)

行名中Ve_2016,Ba_2017和Emb_2017的空格可能会给您错误消息。

library(vegan)

A <- c(54.67, 37.67, 19.33, 0, 6, 8, 84.67, 0,0,0,0,0,0,0)
B <- c(3.67, 10.33, 32.67, 5.33, 20.33, 5.33, 4.67, 3, 4, 0.01, 0.1, 0, 5, 0)
C <- c(10, 1.67, 2.67, 1.67, 11.33, 1.33, 1, 2, 2.77, 0, 0.02, 1,3,0)
D <- c(1,10.33, 2.33, 28.33, 29.33, 4.33, 21, 6.97, 4.47, 0, 0.16, 11, 4,0)
df <- cbind(A,B,C,D)

row.names(df) <- c('B_2016', 'Emb_2016', 'Fes_2016', 'Ku_2016', 'Ra_2016', 'Ud_2016',
  'Ve_2016', 'Ba_2017', 'Emb_2017', 'Fes_2017', 'Ku_2017', 'Ra_2017',
  'Ud_2017', 'Ve_2017')

mds <- metaMDS(df, distance='bray')

plot(mds)