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)
"summary"(object, ...)
"predict"(object, newdata = NULL, ...)
"plot"(x, xlab = "Biomass", ylab = "Species Richness", lwd = 2, l.col = "blue", p.col = 1, type = "b", ...)
"points"(x, ...)
"lines"(x, segments=101, ...)
"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. humpfit
mass
used in predict
. The
original data values are used if missing.plot
plot
plot
: "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
ellipse) can be used to draw approximate confidence ellipses
for pairs of parameters, if the normal assumptions look appropriate.
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.
The parameters 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
MASS, you can use functions
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