Learn R Programming

evolqg (version 0.3-4)

Rarefaction: Rarefaction analysis via resampling

Description

Calculates the repeatability of a statistic of the data, such as correlation or covariance matrix, via bootstrap resampling with varying sample sizes, from 2 to the size of the original data.

Usage

Rarefaction(
  ind.data,
  ComparisonFunc,
  ...,
  num.reps = 10,
  correlation = FALSE,
  replace = FALSE,
  parallel = FALSE
)

Value

returns the mean value of comparisons from samples to original statistic, for all sample sizes.

Arguments

ind.data

Matrix of residuals or individual measurments

ComparisonFunc

comparison function

...

Additional arguments passed to ComparisonFunc

num.reps

number of populations sampled per sample size

correlation

If TRUE, correlation matrix is used, else covariance matrix. MantelCor always uses correlation matrix.

replace

If true, samples are taken with replacement

parallel

if TRUE computations are done in parallel. Some foreach back-end must be registered, like doParallel or doMC.

Author

Diogo Melo, Guilherme Garcia

Details

Samples of various sizes, with replacement, are taken from the full population, a statistic calculated and compared to the full population statistic.

A specialized plotting function displays the results in publication quality.

Bootstraping may be misleading with very small sample sizes. Use with caution if original sample sizes are small.

See Also

BootstrapRep

Examples

Run this code
ind.data <- iris[1:50,1:4]

results.RS <- Rarefaction(ind.data, RandomSkewers, num.reps = 5)
#' #Easy parsing of results
library(reshape2)
melt(results.RS)

# or :
# \donttest{
results.Mantel <- Rarefaction(ind.data, MatrixCor, correlation = TRUE, num.reps = 5)
results.KrzCov <- Rarefaction(ind.data, KrzCor, num.reps = 5)
results.PCA <- Rarefaction(ind.data, PCAsimilarity, num.reps = 5)
# }

if (FALSE) {
#Multiple threads can be used with some foreach backend library, like doMC or doParallel
library(doMC)
registerDoMC(cores = 2)
results.KrzCov <- Rarefaction(ind.data, KrzCor, num.reps = 5, parallel = TRUE)
}

Run the code above in your browser using DataLab