R: Landscape Class Statistics

ClassStat {SDMTools} | R Documentation

## Landscape Class Statistics

### Description

`ClassStat` calculates the class statistics for patch types identified in a matrix of data or in a raster of class 'asc' (SDMTools & adehabitat packages), 'RasterLayer' (raster package) or 'SpatialGridDataFrame' (sp package).

### Usage

    ClassStat(mat, cellsize = 1, bkgd = NA, latlon = FALSE)

### Arguments

`mat` | a matrix of data with patches identified as classes (unique integer values) as e.g., a binary lanscape of a species distribution or a vegetation map. Matrix can be a raster of class 'asc' (adehabitat package), 'RasterLayer' (raster package) or 'SpatialGridDataFrame' (sp package)
`cellsize` | cell size (in meters) is a single value representing the width/height of cell edges (assuming square cells)
`bkgd` | the background value for which statistics will not be calculated
`latlon` | boolean value representing if the data is geographic. If latlon == TRUE, matrix must be of class 'asc', 'RasterLayer' or 'SpatialGridDataFrame'

### Details

The class statistics are based on statistics calculated by fragstats http://www.umass.edu/landeco/research/fragstats/fragstats.html.

### Value

a data.frame listing

`class` | a particular patch type from the original input matrix (`mat`).
`n.patches` | the number of patches of a particular patch type or in a class.
`total.area` | the sum of the areas (m2) of all patches of the corresponding patch type.
`prop.landscape` | the proportion of the total lanscape represented by this class
`patch.density` | the numbers of patches of the corresponding patch type divided by total landscape area (m2).
`total.edge` | the total edge length of a particular patch type.
`edge.density` | edge length on a per unit area basis that facilitates comparison among landscapes of varying size.
`landscape.shape.index` | a standardized measure of total edge or edge density that adjusts for the size of the landscape.
`largest.patch.index` | largest patch index quantifies the percentage of total landscape area comprised by the largest patch.
`mean.patch.area` | average area of patches.
`sd.patch.area` | standard deviation of patch areas.
`min.patch.area` | the minimum patch area of the total patch areas.
`max.patch.area` | the maximum patch area of the total patch areas.
`perimeter.area.frac.dim` | perimeter-area fractal dimension equals 2 divided by the slope of regression line obtained by regressing the logarithm of patch area (m2) against the logarithm of patch perimeter (m).
`mean.perim.area.ratio` | the mean of the ratio patch perimeter. The perimeter-area ratio is equal to the ratio of the patch perimeter (m) to area (m2).
`sd.perim.area.ratio` | standard deviation of the ratio patch perimeter.
`min.perim.area.ratio` | minimum perimeter area ratio
`max.perim.area.ratio` | maximum perimeter area ratio.
`mean.shape.index` | mean of shape index
`sd.shape.index` | standard deviation of shape index.
`min.shape.index` | the minimum shape index.
`max.shape.index` | the maximum shape index.
`mean.frac.dim.index` | mean of fractal dimension index.
`sd.frac.dim.index` | standard deviation of fractal dimension index.
`min.frac.dim.index` | the minimum fractal dimension index.
`max.frac.dim.index` | the maximum fractal dimension index.
`total.core.area` | the sum of the core areas of the patches (m2).
`prop.landscape.core` | proportional landscape core
`mean.patch.core.area` | mean patch core area.
`sd.patch.core.area` | standard deviation of patch core area.
`min.patch.core.area` | the minimum patch core area.
`max.patch.core.area` | the maximum patch core area.
`prop.like.adjacencies` | calculated from the adjacency matrix, which shows the frequency with which different pairs of patch types (including like adjacencies between the same patch type) appear side-by-side on the map (measures the degree of aggregation of patch types).
`aggregation.index` | computed simply as an area-weighted mean class aggregation index, where each class is weighted by its proportional area in the landscape.
`lanscape.division.index` | based on the cumulative patch area distribution and is interpreted as the probability that two randomly chosen pixels in the landscape are not situated in the same patch
`splitting.index` | based on the cumulative patch area distribution and is interpreted as the effective mesh number, or number of patches with a constant patch size when the landscape is subdivided into S patches, where S is the value of the splitting index.
`effective.mesh.size` | equals 1 divided by the total landscape area (m2) multiplied by the sum of patch area (m2) squared, summed across all patches in the landscape.
`patch.cohesion.index` | measures the physical connectedness of the corresponding patch type.

### Author(s)

Jeremy VanDerWal jjvanderwal@gmail.com

### References

McGarigal, K., S. A. Cushman, M. C. Neel, and E. Ene. 2002. FRAGSTATS: Spatial Pattern Analysis Program for Categorical Maps. Computer software program produced by the authors at the University of Massachusetts, Amherst. Available at the following web site: www.umass.edu/landeco/research/fragstats/fragstats.html

### See Also

`PatchStat`, `ConnCompLabel`

### Examples

    #define a simple binary matrix
    tmat = { matrix(c( 0,0,0,1,0,0,1,1,0,1,
                       0,0,1,0,1,0,0,0,0,0,
                       0,1,NA,1,0,1,0,0,0,1,
                       1,0,1,1,1,0,1,0,0,1,
                       0,1,0,1,0,1,0,0,0,1,
                       0,0,1,0,1,0,0,1,1,0,
                       1,0,0,1,0,0,1,0,0,1,
                       0,1,0,0,0,1,0,0,0,1,
                       0,0,1,1,1,0,0,0,0,1,
                       1,1,1,0,0,0,0,0,0,1),nr=10,byrow=TRUE) }

    #do the connected component labelling
    ccl.mat = ConnCompLabel(tmat)
    ccl.mat
    image(t(ccl.mat[10:1,]),col=c('grey',rainbow(length(unique(ccl.mat))-1)))

    #calculate the patch statistics
    ps.data = PatchStat(ccl.mat)
    ps.data

    #calculate the class statistics
    cl.data = ClassStat(tmat)
    cl.data

    #identify background data is 0
    cl.data = ClassStat(tmat,bkgd=0)
    cl.data

[Package SDMTools version 1.1-221.2 Index]