Learn R Programming

metricTester (version 1.2.2)

plotTest: Calculate if single, observed metrics deviate beyond expectations

Description

Given a table of results, where means, SDs, and CIs are bound to the observed scores at the corresponding richness or plot, this function calculates whether each observed score is significantly less or ore than expected at that plot or richness.

Usage

plotTest(results.table, concat.by, metrics)

Arguments

results.table
Data frame of observed metrics with expected mean, SD and CI bound in. See example
concat.by
Whether to concatenate results by richness, plot or both. If richness, observed scores are compared to all randomized scores where the plot had the corresponding richness. If plot, observed scores (e.g. those from plot 1) are compared to all randomized plot 1 scores. If both, both are run and each is saved as a separate data frame in a single list.
metrics
Optional list of named metric functions to use. If invoked, this option will likely be used to run a subset of the defined metrics.

Value

A data frame of 0s, 1s, and 2s.

Details

Given a table of results, where means, SDs, and CIs are bound to the observed scores at the corresponding richness or plot, this function returns 0, 1, or 2, corresponding to not significant, significantly clustered, and significantly overdispersed.

References

Miller, E. T., D. R. Farine, and C. H. Trisos. 2015. Phylogenetic community structure metrics and null models: a review with new methods and software. bioRxiv 025726.

Examples

Run this code
#simulate tree with birth-death process
tree <- geiger::sim.bdtree(b=0.1, d=0, stop="taxa", n=50)

#simulate a log normal abundance distribution
sim.abundances <- round(rlnorm(5000, meanlog=2, sdlog=1)) + 1

#simulate a community of varying richness
cdm <- simulateComm(tree, richness.vector=10:25, abundances=sim.abundances)

#below not run for example timing issues on CRAN

#run the metrics and nulls combo function
#rawResults <- metricsNnulls(tree, cdm)

#reduce the randomizations to a more manageable format
#reduced <- reduceRandomizations(rawResults)

#calculate the observed metrics from the input CDM
#observed <- observedMetrics(tree, cdm)

#summarize the means, SD and CI of the randomizations
#summarized <- lapply(reduced, summaries, concat.by="richness")

#merge the observations and the summarized randomizations to facilitate significance
#testing
#merged <- lapply(summarized, merge, observed)

#calculate the standardized scores of each observed metric as compared to the richness
#null model randomization
#plotTest(merged$richness, "richness")

#do the same as above but across all null models
#temp <- lapply(1:length(merged), function(x) plotTest(merged[[x]], "richness"))

Run the code above in your browser using DataLab