R語言:數量生態學學習筆記——doubs數據探索(1)

數據提取

1、安裝doubs數據所在的包並載入

install.packages(「ade4」)
library(ade4)

2、找到ade4中的數據集「doubs」,並對之後要用到的變量進行提取

data(doubs,package=「ade4」)
env<-doubs$env
spe<-doubsSspecies #美元符號打不出來用大寫的S代替了
spa<-doubsSxy #美元符號打不出來用大寫的S代替了

env是doubs數據中11個環境變量
spe是27種魚類在每個樣方的多度
spa是每個樣方的位置(笛卡爾座標系)

數據初探

spe[1:5,1:10] #spe的一到五行和一到十列
head(spe) #spe的前六行
nrow(spe);ncol(spe);dim(spe) #spe的行數,列數,維度
colnames(spe);rownames(spe)#提取列名,行名
summary(spe)#對列變量進行描述性統計
在這裏插入圖片描述

查看物種多度分佈是否對稱

range(spe)
range(spe) #多度範圍
ab<-table(unlist(spe));ab
barplot(ab,las=1,xlab = 「Abundance class」,ylab = 「Frequency」,col = gray(5:0/5))
#每種多度值的數量並繪製柱狀圖
在這裏插入圖片描述
sum(spe=0)
sum(spe=0)/(nrow(spe)*ncol(spe))#多度爲0所佔的比例

我們發現對數據的初步探索並不能觀察到有規律和價值的信息,因此要對數據進行下一步分析

進一步分析

1、樣方位置地圖

plot(spa, asp=1, type=「n」, main=「樣方位置」,xlab=「x座標 (km)」, ylab=「y座標 (km)」)
lines(spa, col=「light blue」)
text(spa, row.names(spa), cex=0.8, col=「red」)
text(70, 10, 「上游」, cex=1.2, col=「red」)
text(20, 120, 「下游」, cex=1.2, col=「red」)

在這裏插入圖片描述

2、魚類分佈地圖

par(mfrow=c(2,2))
plot(spa, asp=1, col=「brown」, cex=speSAbbr, main=「歐鯿」,
xlab=「x座標 (km)」, ylab=「y座標 (km)」)
lines(spa, col=「light blue」)
plot(spa, asp=1, col=「brown」, cex=speSCogo, main=「茴魚」,
xlab=「x座標 (km)」, ylab=「y座標 (km)」)
lines(spa, col=「light blue」)
plot(spa, asp=1, col=「brown」, cex=speSBaba, main=「䰾魚」,
xlab=「x座標 (km)」, ylab=「y座標 (km)」)
lines(spa, col=「light blue」)
plot(spa, asp=1, col=「brown」, cex=speSNeba, main=「褐鱒」,
xlab=「x座標 (km)」, ylab=「y座標 (km)」)
lines(spa, col=「light blue」)

在這裏插入圖片描述

3、每個物種出現的樣方數

spe.pres <- apply(spe > 0, 2, sum) #按列求和
sort(spe.pres) #升序排列
spe.relf <- 100*spe.pres/nrow(spe) #頻數百分比
round(sort(spe.relf), 1) #一位小數
par(mfrow=c(1,2)) # 將繪圖窗口垂直一分爲二
hist(spe.pres, main=「物種出現數」, right=FALSE, las=1,xlab=「出現數」, ylab=「物種數量」 ,breaks=seq(0,30,by=5), col=「bisque」)
hist(spe.relf, main=「物種相對頻度」, right=FALSE, las=1, xlab=「出現率(%)」, ylab=「物種數量」,breaks=seq(0, 100, by=10), col=「bisque」)

在這裏插入圖片描述

4、每個樣方的物種豐富度

sit.pres <- apply(spe > 0, 1, sum)
sort(sit.pres)
par(mfrow=c(1,2))
plot(sit.pres,type=「s」, las=1, col=「gray」,
main=「物種豐富度-上下游的梯度」,
xlab=「樣方沿着河流的位置」, ylab=「物種豐富度」)
text(sit.pres, row.names(spe), cex=.8, col=「red」)#不同樣方的物種豐富度
plot(spa, asp=1, main=「物種豐富度地圖」, pch=21, col=「white」,
bg=「brown」, cex=5*sit.pres/max(sit.pres), xlab=「x座標 (km)」,
ylab=「y座標 (km)」)
lines(spa, col=「light blue」)#物種豐富度地圖在這裏插入圖片描述

可以看出上游和中游是物種豐富度高的地區
5、計算生物多樣性指數

library(vegan)
N0 <- rowSums(spe > 0)
H <- diversity(spe)
N1 <- exp(H)
N2 <- diversity(spe, 「inv」)
J <- H/log(N0)
E1 <- N1/N0
E2 <- N2/N0
(divers <- data.frame(N0, H, N1, N2, E1, E2, J)) # 輸出值分別是物種豐富度、Shannon熵指數、Shannon多樣性指數、Simpson多樣性指數、Pielou均勻度、Shannon均勻度(Hill比率)、Simpson均勻度
在這裏插入圖片描述