# Load Libraries library(vegan) library(BiodiversityR) # Load data Brier_Ck<-read.csv("Brier_Ck.csv", header= T, row.names = 1) # environmental matrix with factors we will use later Brier_environmental<-read.csv("Brier_environmental.csv",header=T,row.names=1) # Species Richness # pa matrix Brier_pa<-decostand(Brier_Ck,method="pa") Brier_S<-apply(Brier_pa,1,sum) # function specnumber does this in one step specnumber(Brier_Ck) # Shannon diversity Brier_p<-decostand(Brier_Ck, MARGIN=1, method="total") Brier_p_lnp<-Brier_p*log(Brier_p) Brier_shannon<-apply(Brier_p_lnp,1,sum, na.rm=T)*-1 # using function diversity diversity(Brier_Ck,index="shannon",MARGIN=1) #Simpsons index Brier_p<-decostand(Brier_Ck, MARGIN=1, method="total") Brier_p2<-Brier_p^2 1-apply(Brier_p2,1,sum, na.rm=T) # using function diversity diversity(Brier_Ck,index="simpson",MARGIN=1) # evenness (j) # This is Shannons diversity divided by log(S) Brier_J<-Brier_shannon/log(Brier_S) # use diversityresult, need to specify "each site" diversityresult(Brier_Ck,index="Shannon",method="each site") # pool all sites diversityresult(Brier_Ck,index="Shannon",method="pooled") # mean diversit across sites diversityresult(Brier_Ck,index="Shannon",method="mean") # sd diversityresult(Brier_Ck,index="Shannon",method="sd") # same as mean(Brier_shannon) sd(Brier_shannon) # mean diversit across sites diversityresult(Brier_Ck,index="Shannon",method="jackknife") # gamma diversity estimator diversityresult(Brier_Ck,index="chao",method="pooled") # Diversity using a factor. Here, arbitrary two level factor a and b # load environemntal matrix with factors from Brier_environmental,csv Brier_environmental # get diversit for one level of a factor diversityresult(Brier_Ck,y=Brier_environmental,index="Shannon",method="each site",factor="year",level="b") # function diversitycomp will get diversity for all levels of a factor diversitycomp(Brier_Ck,y=Brier_environmental,index="Shannon",method="pooled",factor1="year") # two factors (year and location) diversitycomp(Brier_Ck,y=Brier_environmental,index="Shannon",method="pooled",factor1="year",factor2="location") # Species accumulation plots species_accumulation<-specaccum(Brier_Ck,method="collector") species_accumulation plot(species_accumulation) species_accumulation<-specaccum(Brier_Ck,method="exact") species_accumulation plot(species_accumulation) species_accumulation<-specaccum(Brier_Ck,method="random") species_accumulation plot(species_accumulation) # Sample function # needs to work on a matrix object, use as.matrix Brier_Ck_matrix<-as.matrix(Brier_Ck) # overall mean of the whole matrix mean(Brier_Ck_matrix) # take 100 values from the matrix sample(Brier_Ck_matrix,100,replace=T) # mean of 100 samples mean(sample(Brier_Ck_matrix,100,replace=TRUE)) # mean of 10,000 mean(sample(Brier_Ck_matrix,10000,replace=TRUE)) # sample all values without replacement mean(sample(Brier_Ck_matrix,3000,replace=FALSE)) # rarefaction species_accumulation<-specaccum(Brier_Ck,method="rarefaction") plot(species_accumulation) # mean number of individuals per sample mean(apply(Brier_Ck,1,sum)) # raw data species_accumulation # replicate the rarefaction in specaccum...select 428 individuals from each sample pooled<-apply(Brier_Ck,2,sum) rarefied_sample<-rrarefy(pooled,sample=428) specnumber(rarefied_sample) # use function rarefy to select a constant number of individuals from each sample # then return diversity and standard error of values # here, we are selelcting 100 individuals rarefied_100<-rarefy(Brier_Ck,100, se=T) t(rarefied_100)