humpfit fits a no-interaction model for species
richness vs. biomass data (Oksanen 1996). This is a null model that
produces a hump-backed response as an artifact of plant size and
density.humpfit(mass, spno, family = poisson, start)
## S3 method for class 'humpfit':
summary(object, ...)
## S3 method for class 'humpfit':
predict(object, newdata = NULL, ...)
## S3 method for class 'humpfit':
plot(x, xlab = "Biomass", ylab = "Species Richness", lwd = 2,
l.col = "blue", p.col = 1, type = "b", ...)
## S3 method for class 'humpfit':
points(x, ...)
## S3 method for class 'humpfit':
lines(x, segments=101, ...)
## S3 method for class 'humpfit':
profile(fitted, parm = 1:3, alpha = 0.01, maxsteps = 20, del = zmax/5, ...)family
can be used, but the link function is always Fisher's diversity
model, and other link functions are silently ignored.humpfitmass used in predict. The
original data values are used if missing.plotplotplot: "p" for observed points,
"l" for fitted lines, "b" for both, and "n" for
only setting axes."humpfit" inheriting from
class "glm". The result object has specific summary,
predict, plot, points and lines
methods. In addition, it can be accessed by the following methods
for glm objects: AIC,
extractAIC, deviance,
coef, residuals.glm (except type =
"partial"), fitted, and perhaps some others. In
addition, function ellipse.glm (package
link
function) from Fisher's log-series (Fisher et al. 1943).The parameters of the model are:
hump: the location of the hump on the biomass gradient.scale: an arbitrary multiplier to translate the biomass
into virtual number of plants.alpha: Fisher's$\alpha$to translate the
virtual number of plants into number of species.scale and alpha are intermingled and this
function should not be used for estimating Fisher's
$\alpha$. Probably the only meaningful and interesting
parameter is the location of the hump. Function may be very
difficult to fit and easily gets trapped into local solutions, or
fails with non-Poisson families, and function profile should be
used to inspect the fitted models. If you have loaded package
plot.profile,
pairs.profile for graphical inspection of the
profiles, and confint.profile.glm for the profile
based confidence intervals.
The original model intended to show that there is no need to speculate about `competition' and `stress' (Al-Mufti et al. 1977), but humped response can be produced as an artifact of using fixed plot size for varying plant sizes and densities.
fisherfit, profile.glm,
confint.glm.##
## Data approximated from Al-Mufti et al. (1977)
##
mass <- c(140,230,310,310,400,510,610,670,860,900,1050,1160,1900,2480)
spno <- c(1, 4, 3, 9, 18, 30, 20, 14, 3, 2, 3, 2, 5, 2)
sol <- humpfit(mass, spno)
summary(sol) # Almost infinite alpha...
plot(sol)
# confint is in MASS, and impicitly calls profile.humpfit.
# Parameter 3 (alpha) is too extreme for profile and confint, and we
# must use only "hump" and "scale".
library(MASS)
plot(profile(sol, parm=1:2))
confint(sol, parm=c(1,2))Run the code above in your browser using DataLab