Shannon | R Documentation |
Computes Shannon's diversity index (H') on different classes of numeric matrices using a moving window algorithm.
Shannon(x, window=3, rasterOut=TRUE, np=1, na.tolerance=1.0, cluster.type="SOCK", debugging=FALSE)
x |
input data may be a matrix, a Spatial Grid Data Frame, a RasterLayer or a list of these objects. In the latter case, only the first element of the list will be considered. |
window |
the side of the square moving window, it must be a odd numeric value greater than 1 to ensure that the target pixel is in the centre of the moving window. Default value is 3. |
rasterOut |
Boolean, if TRUE the output will be in RasterLayer format with x as template. |
np |
the number of processes (cores) which will be spawned. Default value is 1. |
na.tolerance |
a numeric value (0.0-1.0) which indicates the proportion of NA values that will be tolerated to calculate Shannon's index in each moving window over x. If the relative proportion of NA's in a moving window is bigger than na.tolerance, then the value of the window will be set as NA, otherwise Rao's index will be calculated considering the non-NA values. Default values is 1.0 (i.e., no tolerance for NA's). |
cluster.type |
the type of cluster which will be created. The options are |
debugging |
a boolean variable set to FALSE by default. If TRUE, additional messages will be printed. For debugging only. |
Shannon's index (H') is calculated on a numerical matrix as H' = {∑_{i=1}^{R} p_i \times log(p_i)}, where R is the total number of categories (i.e., unique numerical values in the considered numerical matrix) and p is the relative abundance of each category.
A numerical matrix with dimension {dim(x)}
.
Linux users need to install libopenmpi for MPI parallel computing. Linux Ubuntu users may try: apt-get update; apt-get upgrade; apt-get install mpi; apt-get install libopenmpi-dev; apt-get install r-cran-rmpi
Microsoft Windows users may need some additional work to use "MPI", see:
https://bioinfomagician.wordpress.com/2013/11/18/installing-rmpi-mpi-for-r-on-mac-and-windows/
Marcantonio Matteo marcantoniomatteo@gmail.com
Martina Iannacito martina.iannacito@inria.fr
Duccio Rocchini duccio.rocchini@unibo.it
Shannon, C.E. (1948). A mathematical theory of communication. Bell System Technical Journal, 27: 379-423, 623-656.
#Minimal example; compute Shannon's index a <- matrix(c(10,10,10,20,20,20,20,30,30),ncol=3,nrow=3) shannon <- Shannon(x=a,window=3)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.