Bex Middleton
Bex Middleton

Reputation: 17

Extrapolating Species Accumulation Curves using specaccum()

Im looking at some Species of amphibians/reptiles found in a rainforest reserve using two different survey methodologies. I want to compare the methodologies, but one methodology has a lot more data than the other.

Within the study site, there are also three different zones with different levels of disturbance (CCR, PCR, and SLR), these also have varying amounts of effort to one another within and between the two survey methods.

I want to create two extrapolated species accumulation curves for each methodology, one including all disturbance types and another with the disturbance types split up.

I've managed to create the accumulation curves, but they are not extrapolated past the number of individuals observed. How can I extrapolate the curves?

SAves <- specaccum(comm = cves[,4:ncol(cves)],  method = "rarefaction") #getting species accumulation for ves 
SAvCCR <- specaccum(comm = cvCCR[,4:ncol(cves)], method = "rarefaction") #getting species accumulation for ves ccr 
SAvPCR <- specaccum(comm = cvPCR[,4:ncol(cves)], method = "rarefaction") #getting species accumulation for ves pcr 
SAvSLR <- specaccum(comm = cvSLR[,4:ncol(cves)], method = "rarefaction") #getting species accumulation for ves slr

par(mfrow= c(1,2))
plot(SAves[["individuals"]], y=SAves[["richness"]], xlab = "Individuals", ylab="Richness", main = "Visual Encounter Survey Species Accumulation") #plotting species accumulation curves for VES
plot(SAvSLR[["individuals"]], y=SAvSLR[["richness"]], xlab = "Individuals", ylab="Richness", main = "Species Accumulation by Disturbance Type", col = "green", type = "b", xlim = c(30,300), ylim =c(10,40))
lines(SAvCCR[["individuals"]], y=SAvCCR[["richness"]], xlab = "Individuals", ylab="Richness", col = "red", type = "b")
lines(SAvPCR[["individuals"]], y=SAvPCR[["richness"]], xlab = "Individuals", ylab="Richness", col = "blue", type = "b")


SAbox <- specaccum(comm = cbox[,4:ncol(cbox)], method = "rarefaction") #getting species accumulation for herp box 
SAbCCR <- specaccum(comm = cbCCR[,4:ncol(cbox)], method = "rarefaction") #getting species accumulation for herp box ccr 
SAbPCR <- specaccum(comm = cbPCR[,4:ncol(cbox)], method = "rarefaction") #getting species accumulation for herp box pcr 
SAbSLR <- specaccum(comm = cbSLR[,4:ncol(cbox)], method = "rarefaction") #getting species accumulation for herp box slr

par(mfrow= c(1,2))
plot(SAbox[["individuals"]], y=SAbox[["richness"]], xlab = "Individuals", ylab="Richness", type="b") #plotting species accumulation curves for herp box 
plot(SAbSLR[["individuals"]], y=SAbSLR[["richness"]], xlab = "Individuals", ylab="Richness", main = "Species Accumulation by Disturbance Type", col = "green", type = "b", ylim=c(0,35), xlim = c(8, 80))
lines(SAbCCR[["individuals"]], y=SAbCCR[["richness"]], xlab = "Individuals", ylab="Richness", col = "red", type = "b")
lines(SAbPCR[["individuals"]], y=SAbPCR[["richness"]], xlab = "Individuals", ylab="Richness", col = "blue", type = "b")

enter image description here

Upvotes: 0

Views: 1270

Answers (1)

Jari Oksanen
Jari Oksanen

Reputation: 3682

Rarefaction and other specaccum tools are interpolation methods, and there is no firm way of extrapolating these results. However, fitspecaccum offers some choices to fit popular non-linear models to the interpolated data and these fitted models can be used to extrapolation via predict function. However, in general these models do not fit too well to the interpolated data, and their extrapolations may be just as poor. Some of these models postulate an asymptotic upper limit, but some do not, and this really influences the extrapolations, and some of these results can be misleading (and there is no way to know which models are valid when they differ).

There is a package called BNPvegan (Bayesian Non-Parametric vegan) that introduces extrapolated rarefaction. However, both the package and the actual method are still under development, so proceed with caution and follow the changes in the package. The package is available through https://github.com/alessandrozito/BNPvegan.

In your case, it is typical to rarefy down to the number of individuals that applies to all your cases. It can be anything between the number of individuals in the smallest sample set and two individuals (in principle one as well, but that is useless as you always have one species with one individual). However, you should be aware that in some cases the rarefaction curves cross so that the ordering of rarefied richnesses can chance. In your example they seem not to cross and you are safe, but always check this.

Upvotes: 2

Related Questions