R腳本-多元環(huán)境相似面分析和最不相似分析
R腳本-多元環(huán)境相似面分析和最不相似分析
對(duì)于多元環(huán)境相似面分析和最不相似分析,需要用到R語言中的vegan包。
首先,我們需要準(zhǔn)備好數(shù)據(jù),假設(shè)我們有一個(gè)數(shù)據(jù)框data,其中有多個(gè)環(huán)境因子和多個(gè)物種信息。我們可以通過以下代碼導(dǎo)入數(shù)據(jù):
復(fù)制代碼
library(vegan)
data <- read.csv("data.csv", header = T)
接下來,我們可以進(jìn)行多元環(huán)境相似面分析。假設(shè)我們有兩個(gè)環(huán)境因子:溫度和濕度。我們可以使用以下代碼:
復(fù)制代碼
# 構(gòu)建環(huán)境數(shù)據(jù)框
env <- data.frame(datatemperature,datatemperature, datatemperature,datahumidity)
colnames(env) <- c("temperature", "humidity")
# 進(jìn)行多元環(huán)境相似面分析
envsim <- envfit(data, env, perm = 999)
上述代碼中,我們首先將溫度和濕度兩個(gè)環(huán)境因子作為一個(gè)環(huán)境數(shù)據(jù)框env,然后使用envfit函數(shù)對(duì)數(shù)據(jù)進(jìn)行多元環(huán)境相似面分析。其中,perm參數(shù)表示進(jìn)行999次置換檢驗(yàn)。
接著,我們可以繪制多元環(huán)境相似面圖,使用以下代碼:
復(fù)制代碼
plot(data, type = "n")
points(data, col = "gray", pch = 1)
ord <- scores(data, display = "sites", choices = c(1, 2))
text(ord, labels = rownames(data), cex = 0.8, col = "gray")
plot(envsim, display = "vectors", col = "red", add = T)
上述代碼中,我們使用scores函數(shù)對(duì)數(shù)據(jù)進(jìn)行主坐標(biāo)分析,然后使用text函數(shù)將樣本名稱添加到圖中。最后,我們使用plot函數(shù)繪制多元環(huán)境相似面圖,并使用add參數(shù)將結(jié)果添加到主圖中。
接下來,我們可以進(jìn)行最不相似分析。假設(shè)我們有三個(gè)物種:A、B和C。我們可以使用以下代碼:
復(fù)制代碼
# 構(gòu)建物種數(shù)據(jù)框
species <- data.frame(dataA,dataA, dataA,dataB, data$C)
colnames(species) <- c("A", "B", "C")
# 進(jìn)行最不相似分析
dis <- vegdist(species, method = "euclidean")
mds <- cmdscale(dis)
# 繪制最不相似分析圖
plot(mds, type = "n", xlab = "Axis 1", ylab = "Axis 2")
text(mds, labels = rownames(species), cex = 0.8, col = "gray")
points(mds, col = "red", pch = 19)
上述代碼中,我們首先將A、B和C三個(gè)物種數(shù)據(jù)構(gòu)建成一個(gè)物種數(shù)據(jù)框species。然后,使用vegdist函數(shù)計(jì)算物種之間的歐氏距離,并使用cmdscale函數(shù)進(jìn)行最不相似分析。最后,使用plot函數(shù)繪制最不相似分析圖,并使用text函數(shù)添加樣本名稱,使用points函數(shù)將結(jié)果添加到主圖中。
以上就是關(guān)于多元環(huán)境相似面分析和最不相似分析的R腳本。
本文使用 文章同步助手 同步