Description Usage Arguments Details Value Note Author(s) References See Also Examples
Functions for expected species number and its variance at certain sample size. These functions can be used in non-linear regression to estimate Hubbell's ultimate diversity number θ.
1 2 3 4 | E.S(theta, J)
Var.S(theta, J)
E.Somega(theta, omega, J)
wtheta.fun(S, J, theta)
|
theta |
Hubbell's ultimate diversity number θ. |
J |
Community size J. |
omega |
A descriptor for community isolation ω. |
S |
Expected species richness S. |
Hubbell predicts a specific form for species area curve, so that the expected number of species in a metacommunity is dependent only on number of individuals J_M and Hubbell's ultimate diversity number θ. Thus the species–area curve can be used to estimate that ultimate θ. Further, Hubbell outlines analysis for local community.
The expected species richness in Hubbell's model is approximately
S = 1 + θ
ln(1 + (J-1)/theta). However, function E.S
does not use this
approximation but exact result from Hubbell's species generator (see
rhubbell
). Function Var.S
similarly gives
the exact estimator of variance of expected species number from
Hubbell's species generator. Function E.Somega
uses the
species generator with isolation parameter omega
>= 0 for a local community; no variance estimator is available.
Function wtheta.fun
combines E.S
and Var.S
for
variance weighted least squares fitting. It returns the
standardized residuals, or prediction errors divided by the standard
error.
These functions together can be used for non-linear least squares
regression with nls
.
Functions return the specified value each.
Hubbell gives only an approximate equation for expected species number. The exact form and its variance were derived by J. Oksanen and may be unpublished.
Hubbell's model for local community is based on wrong argumentation: Hubbell assumes falsely that his model is asymptotically similar to the classical Arrhenius model. Even with that model, the argumentation in deriving ω is invalid. Moreover, ω and θ are so strongly correlated (positively) that their estimates are very unreliable.
Jari Oksanen
Hubbell, S.P. (2001). The Unified Neutral Theory of Biodiversity and Biogeography. Princeton Univ. Press.
nls
for non-linear regression.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | ## Use Carabid data. First get the total count per pitfall (J) and species
## richness (S).
##
data(carabid)
J <- apply(carabid, 1, sum)
S <- apply(carabid>0, 1, sum)
plot(J, S)
##
## Non-linear least squares
##
sparea <- nls(S ~ E.S(theta,J), start=list(theta=10))
sparea
i <- order(J) ## Order on x axis for nice lines
lines(J[i], fitted(sparea)[i], col="blue", lwd=2)
##
## Then variance weighted least squares.
##
sparea.w <- nls(~ wtheta.fun(S, J, theta),start=list(theta=coef(sparea)))
sparea.w
## We used one sided model formula, and so the fitted values would be
## actually the weighted residuals. Therefore we need to use E.S to
## plot fitted values.
lines(J[i], E.S(coef(sparea.w), J[i]), col="red", lwd=2)
##
## Now with dispersal limitation omega.
## This takes time: so increase iteration limit and ask to
## trace iteration, so that you believe someting is happening
##
sparea.om <- nls(S ~ E.Somega(theta,omega,J), start=list(theta=4, omega=0),
control=nls.control(maxiter=500), trace=1)
sparea.om
lines(J[i], fitted(sparea.om)[i], lwd=2)
##
## Some traditional alternatives
##
arrhenius <- lm(log(S) ~ log(J))
lines(J[i], exp(fitted(arrhenius))[i])
# Doubling J brings along constant number of new species:
logadd <- lm(S ~ log(J))
lines(J[i], fitted(logadd)[i], lty=2)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.