我有一个问题打一个错误。这是我尝试执行行:从素食主义者adonis功能不起作用
library(vegan)
adonis(data = dset, adiv ~ N+P+K)
它返回一条失败消息:
Error in rowSums(x, na.rm = TRUE) :
'x' must be an array of at least two dimensions
一切似乎是正常的与数据集,因为AOV(数据= DSET,ADIV〜N + P + K)工作得很好。我知道当某些函数删除数据框架尺寸时会出现这样的错误,但在这种情况下我不知道如何解决它。
编辑。添加一段我的数据集。
treatment N P K M adiv
N 1 0 0 0 0.2059
P 0 1 0 0 0.20856
K 0 0 1 0 0.22935
O 0 0 0 0 0.10729
NP 1 1 0 0 0.30674
NK 1 0 1 0 0.30509
PK 0 1 1 0 0.30606
NPK+ 1 1 1 1 0.50389
NPK 1 1 1 0 0.40731
manure 0 0 0 1 0.2085
之前,我尝试执行阿多尼斯我治疗转换成数值与因素:
dataset$N <- as.factor(dat$N)
dataset$P <- as.factor(dat$P)
dataset$K <- as.factor(dat$K)
dataset$M <- as.factor(dat$M)
然后我试图执行的功能和得到的错误。 正如我已经提到的,当我尝试aov()或lm()时,一切正常。
您可以制作一个重现错误的小例子吗? – 2015-02-18 08:22:26
@RomanLuštrik我已经添加了一些附加信息。 – 2015-02-18 15:53:22