Learn R Programming

metricTester (version 1.3.6)

linker: Run spatial simulations, null and metric calculations to test metric + null performance

Description

This function wraps a number of wrapper functions into one big metric + null tester function. Only a single test is performed, with results saved into memory.

Usage

linker(no.taxa, arena.length, mean.log.individuals, length.parameter,
  sd.parameter, max.distance, proportion.killed, competition.iterations,
  no.plots, plot.length, concat.by, randomizations, cores, simulations,
  nulls, metrics)

Arguments

no.taxa

The desired number of species in the input phylogeny

arena.length

A numeric, specifying the length of a single side of the arena

mean.log.individuals

Mean log of abundance vector from which species abundances will be drawn

length.parameter

Length of vector from which species' locations are drawn. Large values of this parameter dramatically decrease the speed of the function but result in nicer looking communities

sd.parameter

Standard deviation of vector from which species' locations are drawn

max.distance

The geographic distance within which neighboring individuals should be considered to influence the individual in question

proportion.killed

The percent of individuals in the total arena that should be considered (as a proportion, e.g. 0.5 = half)

competition.iterations

Number of generations over which to run competition simulations

no.plots

Number of plots to place

plot.length

Length of one side of desired plot

concat.by

Whether to concatenate the randomizations by richness, plot or both

randomizations

The number of randomized CDMs, per null, to generate. These are used to compare the significance of the observed metric scores.

cores

The number of cores to be used for parallel processing.

simulations

Optional. If not provided, defines the simulations as all of those in defineSimulations. If only a subset of those simulations is desired, then simulations should take the form of a character vector corresponding to named functions from defineSimulations. The available simulations can be determined by running names(defineSimulations()). Otherwise, if the user would like to define a new simulation on the fly, the argument simulations can take the form of a named list of new functions (simulations).

nulls

Optional. If not provided, defines the nulls as all of those in defineNulls. If only a subset of those is desired, then nulls should take the form of a character vector corresponding to named functions from defineNulls. The available nulls can be determined by running names(defineNulls()). Otherwise, if the user would like to define a new null on the fly, the argument nulls can take the form of a named list of new functions (nulls).

metrics

Optional. If not provided, defines the metrics as all of those in defineMetrics. If only a subset of those is desired, then metrics should take the form of a character vector corresponding to named functions from defineMetrics. The available metrics can be determined by running names(defineMetrics()). Otherwise, if the user would like to define a new metric on the fly, the argument can take the form of a named list of new functions (metrics).

Value

A list of lists of data frames. The first level of the output has one element for each simulation. The second level has one element for each null model. Each of these elements is a list of two data frames, one that summarizes the plot-level significance and another and arena-level significance.

Details

This function wraps a number of other wrapper functions into one big metric + null performance tester function. Only a single test is performed, with results saved into memory. To perform multiple complete tests, use the multiLinker function, which saves results to file.

References

Miller, E. T., D. R. Farine, and C. H. Trisos. 2016. Phylogenetic community structure metrics and null models: a review with new methods and software. Ecography DOI: 10.1111/ecog.02070

Examples

Run this code
# NOT RUN {
#below not run for timing issues on CRAN
#system.time(test <- linker(no.taxa=50, arena.length=300, mean.log.individuals=2, 
	#length.parameter=5000, sd.parameter=50, max.distance=30, proportion.killed=0.2, 
#competition.iterations=3, no.plots=15, plot.length=30, concat.by="richness", 
#randomizations=3, cores="seq",
#nulls=c("richness", "frequency")))
# }

Run the code above in your browser using DataLab