Posum 2
The posum 2 package is an open source implementation of the population
surface method for estimating birth and death rates from age structured
population time-series. It is based on the GAM package mgcv and requires
the R statistical language and environment.
At present posum is in need of some maintainance in order to make it
compatible with current versions of mgcv. In the meantime it should still
work with mgcv version 0.8, for which it was designed.
Basic references for the population surface method are Wood and Nisbet
(1991) and Wood (1994). A paper describing the implementation provided
here is in preparation.
Posum 2 goes some way beyond what is described in Wood (1994). In
particular the code can deal with adult stages (i.e. final stages with
indeterminate upper age boundary), and has a rather more satisfactory way
of dealing with time varying stage durations. 3 error models are
available: Normal, Poisson and Gamma. There are two underlying models
implemented. Type 1 models are conceptually similar to the models of Wood
and Nisbet (1991) and Wood (1994) in that they are based around estimation
of a smooth `population surface' - the population per unit age interval as
a function of age and time. Under type 1 models, death rates are estimated
by numerical differentiation of the fitted population surface. Type 2
models are based around direct estimation of the total death rate surface
(total death per unit age inteval, considered as a smooth function of age
and time), along with estimation of the recruitment to the populaiton
(smooth function of time) and initial population per unit age interval
(smooth function of age). For type 2 models the population surface is
calculated from the death surface and recruitment/initial population
functions. Type 2 models are substantially slower to work with than type 1
models, but tend to give better results when the populaiton varies quite
rapidly on a timescale that is quite short relative to the duration of a
few stages.
Requirements
The posum approach requires that you can supply lower and upper age limits
associated with each observed stage (age class) population, along with a
sample time. The approach will not work well with very few stages or
very few sample times (I don't think I'd even try with less than 4 of
either). Less than 50 data in total is unlikely to produce useful
results. As a very rough guide a good dataset for the method would have
10+ stages and 10+ sample times, and would relate to a population for
which the expectation is of relatively smooth and slow change over the age
range and sample interval of the data, but of course the number of stages
is often less than 10 in practice.
The computing requirements are a machine running Windows, Linux or Unix
and the R language and environment. R is available from
CRAN .
You must also have R
package mgcv, version 0.8.*, installed. Most R installations have
mgcv installed by default, but posum will not work with mgcv 1.0 and
greater.
mgcv
homepage.
The posum package is available here:
Installation is as for any other R package (see the mgcv page for more
detailed instructions). The package is documented via the R help
system. The package is fairly new, and should probably be viewed as a beta
release. Bug reports welcome.
Wood S.N & R.M. Nisbet (1991) "Estimation of Mortality rates
in stage structured populations" Springer-Verlag Berlin
Wood S.N. (1994) " Obtaining birth and death rate patterns from structured
population trajectories" Ecological Monographs 64(1):23-44.