如何使用“adonis”创建循环函数?

时间:2015-12-23 23:02:26

标签: r vegan

 data(dune)
 data(dune.env)

 results<-list()
 for (i in colnames(dune.env)){
         results[[i]]<- adonis(dune ~ i, data=dune.env, permutations=99)
  }

当我在colnames(dune.env)中测试每个名字时,它可以正常工作。 但它不能在上面的循环函数中工作。我认为这是由于循环函数中的i" "。怎么解决?谢谢。

1 个答案:

答案 0 :(得分:4)

我对adonis一无所知,但我确实知道公式是language个对象,这些对象不能很好地被视为普通的character对象。

for (i in colnames(dune.env)){ 
           form <- as.formula(paste("dune", i, sep="~"))
           results[[i]]<- adonis(form, data=dune.env, permutations=99)
           }