||
由于环境因子之间单位不一致,为了让后续处理一致,减少误差,所以需要对环境因子标准化,使用scale=TURE;如果原始环境因子的数据单位是一致可以不用标准化,scale=FALSE。
env.pca<-rda(env, scale=TRUE)
PCA分析致力于分析定量数据,展示欧式距离和线性关系。当主成分分析在包含很多0值 且丰度差别很大的物种组成数据时进行处理时非常糟糕。为此生态学家的普遍建议,将预转化的物种组成数据(例如Hellinger转化)用作PCA的输入,可有效地将“非均匀”物种组成数据同样适用于PCA(tb-PCA),或者使用主坐标分析PCOA。通常情况下,如果你的物种数据原始数据出现的零过多,可以使用Hellinger转化。
spe.h<-decostand(spe,“Hellinger”)
选择标准:第一种选取特征根大于所对应的断棍长度的轴,第二种选取特征的总和大于所对应断棍长度总和前几轴。
Screeplot(env.pca,bstick=TRUE,npcs=length(env.pca$CA$eig))
PCA-1型标尺(对象之间的距离)
Bioplot(env.pca,scaling=1,main=“PCA-1型标尺”)
PCA-2型标尺(变量之间的相关性)
Bioplot(env.pca,scaling=2,main=“PCA-1型标尺”) bioplot默认scaling=2
Biplot(spe.p.pca,main=“鱼类数据PCA-2型标尺”, scaling=2)
spe.h.pca.env<-envfit (spe.h.pca,env, scaling=2))
对应分析是分析物种有-无或多度数据最受欢迎的工具之一,CA非常使用原始的物种多度数据分析(无须预转化)。
spe.ca.env<-envfit(spe.ca~dis+amm,env) #dis,amm为水体流量,铵浓度
plot(spe.ca.env)
ordisurf(spe.ca.env$dis,add=TRUE)
ordisurf(spe.ca.env$amm,add=TRUE,col=“green”)
Spe.bray<-vegdist()
Spe.b.pca<-cmdscale(spe.bray,k=(nrow(spe)-1),eig=TRUE)
spe.b.pcoa.env<-envfit(spe.b.pcoa,env)
Bioplot.pcoa(spe.h.pcoa,spe.h,dir.axis1=-1)
Abline(h=0,lty=3)
Abline(v=0,lty=3)
Text(-0.5,0.45,‘a’,cex=2)
spe.sted<-scale(spe.h)
Bioplot.pcoa(spe.h.pcoa, spe. std,dir.axis1=-1)
Abline(h=0,lty=3)
Abline(v=0,lty=3)
Text(-0.5,0.45,‘a’,cex=2)
Spe.nmds<-metamds(spe,distance=“bray”)
Spe.nmds
Spe.nmds$stress
Par(mfrow=c(1,2))
Stressplot(spe.nmds,main=”shepard图”)
gof<-goodness(spe.nmds)
plot(spe.nmds,type=“t”,main=“拟合度”)
参考了赖江山老师的数量生态学——R语言的应用
https://mp.weixin.qq.com/s/yG-0ZNGCEcGjm0ZFqhXocA
https://mp.weixin.qq.com/s/uWX9CUBNR2ybJ1LxFhKefQ
https://mp.weixin.qq.com/s/9hba5wJmat9Z6-cGQXaCPg
https://mp.weixin.qq.com/s?__biz=MzIxNzc1Mzk3NQ==&mid=2247484313&idx=1&sn=fb22f41aea6055716a1f6a6b8a27823a&chksm=97f5b381a0823a975dbe981805e8886d488df301950db1701b6e3d3324760c7d358e24403ba2&token=1975147261&lang=zh_CN&scene=21#wechat_redirect
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-25 08:15
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社