1. Home
  2. ECFIT procedure

ECFIT procedure

Fits models to species abundance data (D.A. Murray).


PRINT = string tokens Controls printed output (summary, estimates, fittedvalues); default summ, esti
MODELTYPE = string token The model or distribution fitted to the data (logseries, plognormal, negativebinomial, geometric, zipf, mandelbrotzipf); default logs
GROUPS = factor Defines the groups if there is more than one sample
LOGBASE = string token Log base to use to form the octaves for the logseries, Poisson log-Normal and negative binomial distributions (two, ten); default two
PLOT = string token Plots the fitted values (fittedabundance, rankabundance); default fitt


INDIVIDUALS = variates Number of individuals per species
SPECIES = variates Number of species
ESTIMATES = variates Saves the model estimates
EGROUPS = factors Saves the grouping of the estimates


ECFIT provides a range of distributions and models that can be used to describe species abundance data. For the log series, Poisson log-Normal and negative binomial distributions the species abundance data are grouped into “octaves” using a logarithmic scale. These distributions are then fitted using the DISTRIBUTION directive using the octave classes. The geometric series, Zipf and Zipf-Mandelbrot models are fitted to the observed abundance data using the non-linear regression facilities.

The numbers of individuals per species are specified using the INDIVIDUALS parameter. The SPECIES parameter specifies a variate containing the number of species for the associated number of individuals specified in the corresponding element of INDIVIDUALS. SPECIES can be omitted if each of the values in INDIVIDUALS corresponds to one species. The GROUPS option can be used to fit models for different samples.

The distribution or model to be fitted to the data is specified by the MODELTYPE option. The log base for forming the octaves for the log series, Poisson log-normal and negative binomial distributions can be supplied using the LOGBASE option. The default is to use log base 2, i.e. representing doubling in species abundance. The parameter estimates from the fitted model can be saved using the ESTIMATES parameter. The EGROUPS factor saves a factor indicating the group strucure of the estimates.

The PRINT option controls printed output, with settings:

    summary summary of the analysis,
    estimates the parameter estimates,
    fittedvalues the fitted values.

The PLOT option can be used to produce a plot of the fitted model or distribution. For the geometric series, Zipf and Zipf-Mandelbrot models, the fitted model can also be displayed on a rank/abundance plot on the log-scale.




The log series, negative binomial and poisson log normal are fitted using the DISTRIBUTION directive.

For the geometric series the abundances are ranked from the most to least abundant and fitted using FITNONLINEAR where the series is given by

ai = N / (1 – (1 – k)S) × k × (1 – k)i-1

where ai is the total number of individuals in the ith species, N is the total number of individuals, k is the proportion of remaining niche space, and 1 / (1 – (1 – k)S) is a constant that ensures ∑i ai = N.

The Zipf and Zipf-Mandelbrot models are fitted using FITNONLINEAR. The Zipf model is given by

Ai = A1 × i

where A1 is the fitted abundance of the most abundant species, and γ is a constant representing the average probability of the appearance of a species.

The Zipf-Mandelbrot is an extension of the Zipf model and is expressed as

Ai = A1 × (i + β)

where A1 and gamma are as before, and beta is a constant.

Action with RESTRICT

If a parameter is restricted the models will be fitted using only those units included in the restriction.


Kempton, R.A. & Taylor, L.R. (1974). Log-series and log-normal parameters as diversity determinants for the Lepidoptera. Journal of Animal Ecology, 43, 381-399

Magurran, A.E. (2003). Measuring Biological Diversity. Blackwell, Oxford.

Wilson, J.B. (1991). Methods for fitting dominance/diversity curves. Journal of Vegetation Science, 2, 35-46

See also

Commands for: Ecological data.


CAPTION 'ECFIT example'; STYLE=meta
VARIATE [VALUES=1...18,20...23,25,28,29,33,34,38,39,40,42,48,51,52,53,58,61,\
        1799] Individuals
VARIATE [VALUES=37,22,12,12,11,11,6,4,3,5,2,4,2,3,2,2,4,2,4,4,1,1,1,2,\
ECFIT  [PRINT=summary,estimates; MODELTYPE=logseries]\
        Individuals; SPECIES=NumSpecies
ECFIT  [PRINT=summary,estimates; MODELTYPE=negativebinomial]\
        Individuals; SPECIES=NumSpecies
Updated on March 8, 2019

Was this article helpful?