简体   繁体   English

如何用“ adonis”制作循环功能?

[英]how to make a loop function with “adonis”?

 data(dune)
 data(dune.env)

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

When I test each name in colnames(dune.env) , it can work. 当我在colnames(dune.env)测试每个名称时,它就可以工作。 But it can not work in the loop function above. 但是它不能在上面的循环功能中工​​作。 I think it is due to the i in the loop fuction has " " . 我认为这是由于循环功能中的i具有" " How to fix it? 如何解决? Thanks. 谢谢。

I know nothing about adonis, but I do know that formulas are language objects which do not take nicely to being treated as though they were ordinary character objects. 我对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)
           }   

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM