"错误:尺寸不正确"在素食主义者中绘制多变量数据时

时间:2018-05-10 07:06:35

标签: r plot permutation vegan

当我尝试在vegdist R包中使用vegan创建我创建的模型时,收到以下错误。

#Error in x$vectors[take, axes][ch, ] : incorrect number of dimensions

我试图看看动物的物种组合是否在一个站点的星期几之间不同。 我的代码列在下面,附有关于我在每一步尝试做什么的注释。

#reshape my data (df1) into a new multivariate dataframe
dfnew<-dcast(df1, DayOfWeek + SessionID ~ SpeciesName, fill = NULL)
#find out how many species there are
x <- length(dfnew)
#remove the rows (if any) that do not contain any values at all (excluding the first 2 columns which are actually factors we will use in the next step)
dfnew <- dfnew[rowSums(is.na(dfnew)) != ncol(dfnew[,3:x]),] 
#finally, convert all na's to zeros
dfnew[is.na(dfnew)] <- 0

#make two separate data frames to hold the data (dfspecies), and the factors (dfDoW)
dfDoW <- data.frame(dfnew$DayOfWeek)
dfspecies <- data.frame(dfnew[,-1:-2])

library("vegan", lib.loc="~/R/win-library/3.2")
#create a resemblance matrix based off bray-curtis distances (best for comparing species assemblages)
dis <- vegdist(dfspecies, method = "bray")
#create the factor we need to test
groups <- factor(dfDoW$dfnew.DayOfWeek)
#create a model of how the species assemblage varies between days of the week
mod <- betadisper(dis, groups)
#plot the model into a PCoA plot
plot(mod)
#test if species varies according to day of week
permutest(mod, pairwise = T)

现在,发生错误的部分是第二行&#34; plot(mod)&#34;

#Error in x$vectors[take, axes][ch, ] : incorrect number of dimensions  

我查看了str()的{​​{1}}以确保它们匹配(它们确实匹配)。

疯狂的部分是,这个确切的代码完全适用于我在同一数据(时间)上测试的另一个因素。

我认为该模型实际上正在运行,因为data.frame代码行提供了输出。

我提供了一个下面的小型演示数据集的屏幕截图,我可以将其推断回我的代码。

如果有人能帮忙,那就太棒了,谢谢!

Small demo dataset

1 个答案:

答案 0 :(得分:0)

没有可重现的示例,但是当我有一个只有一个成员的组时,我设法触发了相同的错误消息。此问题现已在https://github.com/vegandevs/vegan中修复,此修复程序将在下一个素食主义版本中修复。如果可能,请检查github修复并报告其成功(成功和失败同样有趣)。