为每一个自变量单独跑一次GAMM
#载入数据data
> myresult <- data.frame(); myresult #建立空数据框
> namex <- colnames(data[,4:17]) #提取数据需要使用的自变量名称共计14个
> for (i in 1:14) { #共计14个自变量
> formula1 <- paste("CV.NDVI",namex[i], sep=" ~ s(" ) #因变量CV.NDVI
> formula <- paste(formula1,")" ) #获得方程formula 如 CV.NDVI~ s(Mesopreadator)
> model<- gamm( as.formula(formula ), random=list(Area=~1), data = data) #随机效应Area
> pvalue<-summary(model$gam)[8] #提取gamm结果的p值
> list<-data.frame(namex[i],pvalue)
> myresult <-rbind(myresult,list)
> }
> names(myresult)<-c("independent variables","p-value")
> myresult #结果包括自变量名称和对应的p值
结果示例如下
![](https://img.haomeiwen.com/i12461609/40e917e1bf907ef7.png)
网友评论