crosstable | R Documentation |
cross table is the most common format required by statistical packages used to analyse vegetation data (e.g. vegan).
You may use for convenience a formula as
'abundance ~ plot + species + ...'
.
Additional variables used for rows (...
) can be for instance the
layers.
For objects of class vegtable, the formula can also include
variables from the species list (for example AcceptedName
, AuthorName
)
or even taxon traits.
If required, tables already formatted as cross tables can be converted into
column-oriented tables by using the function cross2db()
.
crosstable(formula, data, ...)
## S4 method for signature 'formula,data.frame'
crosstable(
formula,
data,
FUN,
na_to_zero = FALSE,
use_nas = TRUE,
as_matrix = FALSE,
...
)
## S4 method for signature 'formula,vegtable'
crosstable(
formula,
data,
FUN,
level,
include_lower = FALSE,
na_to_zero = FALSE,
use_nas = TRUE,
...
)
cross2db(object, ...)
## S3 method for class 'data.frame'
cross2db(object, layers = FALSE, na_strings, ...)
## S3 method for class 'matrix'
cross2db(object, ...)
formula |
A formula indicating the variables used in the cross table.
This formula can be represented as |
data |
Either a data frame or an object of class vegtable. |
... |
Further arguments passed to the function |
FUN |
Function used to aggregate values in the case of a multiple occurrence of a species in a plot, for instance. |
na_to_zero |
A logical value indicating whether zeros should be inserted into empty cells or not. |
use_nas |
Logical value indicating whether NAs should be considered as levels for categorical variables or not. |
as_matrix |
A logical value, whether output should be done as matrix or data frame. |
level |
A character vector with taxonomic ranks (levels) requested in the cross table. |
include_lower |
A logical value indicating wether lower value to the
requested levels should be merged or not. It works only if |
object |
A data frame or a matrix including a cross table. Note that
|
layers |
Logical value, whether the cross table includes a layer column or not. |
na_strings |
Character vector indicating no records in the cross table. |
An object of class data.frame.
Miguel Alvarez kamapu78@gmail.com
# Produce a subset
veg <- subset(Kenya_veg, REFERENCE == 2331, slot = "header")
## transform cover to percentage
veg <- cover_trans(veg, to = "cover_perc", rule = "middle")
## cross table of the first 5 plots
Cross <- crosstable(cover_perc ~ ReleveID + AcceptedName + AuthorName,
data = veg[1:5, ], FUN = mean, na_to_zero = TRUE)
head(Cross)
## cross table of recorded genera
Cross <- crosstable(cover_perc ~ ReleveID + AcceptedName + AuthorName,
data = veg, FUN = mean, level = "genus")
head(Cross[ , 1:7])
## cross table of data merged to genus
Cross <- crosstable(cover_perc ~ ReleveID + AcceptedName + AuthorName,
data = veg, FUN = sum, level = "genus", include_lower = TRUE)
head(Cross[ , 1:7])
## the same for families
Cross <- crosstable(cover_perc ~ ReleveID + AcceptedName + AuthorName,
data = veg, FUN = sum, level = "family", include_lower = TRUE)
head(Cross[ , 1:7])
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.