Learn R Programming

EvaluateCore (version 0.1.1)

shannon.evaluate.core: Shannon-Weaver Diversity Index

Description

Compute the Shannon-Weaver Diversity Index (), Maximum diversity () and Shannon Equitability Index () shannon_mathematical_1949EvaluateCore to compare the phenotypic diversity for qualitative traits between entire collection (EC) and core set (CS).

Usage

shannon.evaluate.core(data, names, qualitative, selected)

Arguments

data

The data as a data frame object. The data frame should possess one row per individual and columns with the individual names and multiple trait/character data.

names

Name of column with the individual names as a character string

qualitative

Name of columns with the qualitative traits as a character vector.

selected

Character vector with the names of individuals selected in core collection and present in the names column.

Value

A data frame with the following columns.

Trait

The qualitative trait.

EC_H

The Shannon-Weaver Diversity Index () for EC.

EC_H

The Shannon-Weaver Diversity Index () for CS.

EC_Hmax

The Maximum diversity value () for EC.

CS_Hmax

The Maximum diversity value () for CS.

EC_EH

The Shannon Equitability Index () for EC.

CS_EH

The Shannon Equitability Index () for CS.

Details

Shannon-Weaver Diversity Index () is computed as follows.

Where denotes the proportion in the group .

The maximum value of the index () is . This value occurs when each group has the same frequency.

The Shannon equitability index () is the Shannon diversity index divided by the maximum diversity.

References

See Also

shannon

Examples

Run this code
# NOT RUN {
####################################
# Use data from R package ccChooser
####################################

library(ccChooser)
data("dactylis_CC")
data("dactylis_EC")

ec <- cbind(genotypes = rownames(dactylis_EC), dactylis_EC[, -1])
ec$genotypes <- as.character(ec$genotypes)
rownames(ec) <- NULL
ec[, c("X1", "X6", "X7")] <- lapply(ec[, c("X1", "X6", "X7")],
                                    function(x) cut(x, breaks = 4))
ec[, c("X1", "X6", "X7")] <- lapply(ec[, c("X1", "X6", "X7")],
                                    function(x) factor(as.numeric(x)))
head(ec)

core <- rownames(dactylis_CC)

quant <- c("X2", "X3", "X4", "X5", "X8")
qual <- c("X1", "X6", "X7")

####################################
# EvaluateCore
####################################

shannon.evaluate.core(data = ec, names = "genotypes",
                      qualitative = qual, selected = core)


# }

Run the code above in your browser using DataLab