# beals: Beals Smoothing and Degree of Absence In pattakosn/Rworkshop: Community Ecology Package

## Description

Beals smoothing replaces each entry in the community data with a probability of a target species occurring in that particular site, based on the joint occurrences of the target species with the species that actually occur in the site. Swan's (1970) degree of absence applies Beals smoothing to zero items so long that all zeros are replaced with smoothed values.

## Usage

 ```1 2``` ```beals(x, species = NA, reference = x, type = 0, include = TRUE) swan(x, maxit = Inf) ```

## Arguments

 `x` Community data frame or matrix. `species` Column index used to compute Beals function for a single species. The default (`NA`) indicates that the function will be computed for all species. `reference` Community data frame or matrix to be used to compute joint occurrences. By default, `x` is used as reference to compute the joint occurrences. `type` Numeric. Specifies if and how abundance values have to be used in function `beals`. See details for more explanation. `include` This logical flag indicates whether the target species has to be included when computing the mean of the conditioned probabilities. The original Beals (1984) definition is equivalent to `include=TRUE`, while the formulation of Münzbergová and Herben is equal to `include=FALSE`. `maxit` Maximum number of iterations. The default `Inf` means that iterations are continued until there are no zeros or the number of zeros does not change. Probably only `maxit = 1` makes sense in addition to the default.

## Details

Beals smoothing is the estimated probability p[ij] that species j occurs at site i. It is defined as p[ij] = 1/S[i] Sum(k) N[jk] I[ik] / N[k], where S[i] is the number of species at site i, N[jk] is the number of joint occurrences of species j and k, N[k] is the number of occurrences of species k, and I is the incidence (0 or 1) of species (this last term is usually omitted from the equation, but it is necessary). As N[jk] can be interpreted as a mean of conditional probability, the `beals` function can be interpreted as a mean of conditioned probabilities (De Cáceres & Legendre 2008). The present function is generalized to abundance values (De Cáceres & Legendre 2008).

The `type` argument specifies if and how abundance values have to be used. `type = 0` presence/absence mode. `type = 1` abundances in `reference` (or `x`) are used to compute conditioned probabilities. `type = 2` abundances in `x` are used to compute weighted averages of conditioned probabilities. `type = 3` abundances are used to compute both conditioned probabilities and weighted averages.

Beals smoothing was originally suggested as a method of data transformation to remove excessive zeros (Beals 1984, McCune 1994). However, it is not a suitable method for this purpose since it does not maintain the information on species presences: a species may have a higher probability of occurrence at a site where it does not occur than at sites where it occurs. Moreover, it regularizes data too strongly. The method may be useful in identifying species that belong to the species pool (Ewald 2002) or to identify suitable unoccupied patches in metapopulation analysis (Münzbergová & Herben 2004). In this case, the function should be called with `include=FALSE` for cross-validation smoothing for species; argument `species` can be used if only one species is studied.

Swan (1970) suggested replacing zero values with degrees of absence of a species in a community data matrix. Swan expressed the method in terms of a similarity matrix, but it is equivalent to applying Beals smoothing to zero values, at each step shifting the smallest initially non-zero item to value one, and repeating this so many times that there are no zeros left in the data. This is actually very similar to extended dissimilarities (implemented in function `stepacross`), but very rarely used.

## Value

The function returns a transformed data matrix or a vector if Beals smoothing is requested for a single species.

## Author(s)

Miquel De Cáceres and Jari Oksanen

## References

Beals, E.W. 1984. Bray-Curtis ordination: an effective strategy for analysis of multivariate ecological data. Pp. 1–55 in: MacFadyen, A. & E.D. Ford [eds.] Advances in Ecological Research, 14. Academic Press, London.

De Cáceres, M. & Legendre, P. 2008. Beals smoothing revisited. Oecologia 156: 657–669.

Ewald, J. 2002. A probabilistic approach to estimating species pools from large compositional matrices. J. Veg. Sci. 13: 191–198.

McCune, B. 1994. Improving community ordination with the Beals smoothing function. Ecoscience 1: 82–86.

Münzbergová, Z. & Herben, T. 2004. Identification of suitable unoccupied habitats in metapopulation studies using co-occurrence of species. Oikos 105: 408–414.

Swan, J.M.A. 1970. An examination of some ordination problems by use of simulated vegetational data. Ecology 51: 89–102.

`decostand` for proper standardization methods, `specpool` for an attempt to assess the size of species pool. Function `indpower` assesses the power of each species to estimate the probabilities predicted by `beals`.
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14``` ```data(dune) ## Default x <- beals(dune) ## Remove target species x <- beals(dune, include = FALSE) ## Smoothed values against presence or absence of species pa <- decostand(dune, "pa") boxplot(as.vector(x) ~ unlist(pa), xlab="Presence", ylab="Beals") ## Remove the bias of tarbet species: Yields lower values. beals(dune, type =3, include = FALSE) ## Uses abundance information. ## Vector with beals smoothing values corresponding to the first species ## in dune. beals(dune, species=1, include=TRUE) ```