aqaconvert: Mass and Composition Conversion of Aquatic Species

Description Usage Arguments Details Note Author(s) References Examples

View source: R/aqaconvert.R

Description

aqaconvert taxon or higher level specific conversion factors for aquatic species composition / weights using emirical data.

aqaconvert is the base level function of all of the following specialised functions, which search the conversion database (conv):

afdm2afdms the average ratio of ash-free-dry-mass and ash-free-dry-mass plus shell,
afdm2dm the average ratio of ash-free-dry-mass and dry mass,
afdm2wm the average ratio of ash-free-dry-mass and wet mass,
c2afdm the average ratio of carbon mass and ash-free-dry-mass,
c2dm the average ratio of carbon mass and dry mass,
c2n the average ratio of carbon and nitrogen masses,
c2p the average ratio of carbon and phospherous masses,
carbohydr2dm the average carbohydrate mass and dry mass,
dm2dms the average ratio of dry mass and dry mass plus shell,
dm2wm the average ratio of dry mass and wet mass,
j2afdm the average ratio of joule and miligram,
j2c the average ratio of joule and miligram carbon,
j2dm the average ratio of joule and miligram dry mass,
j2dms the average ratio of joule and miligram dry mass plus shell,
j2n the average ratio of joule and miligram nitrogen,
j2wm the average ratio of joule and miligram wet mass,
j2wms the average ratio of joule and miligram wet mass plus shell,
lipid2dm the average ratio of lipid mass and dry mass,
n2afdm the average ratio of nitrogen mass and ash-free-dry-mass,
n2dm the average ratio of nitrogen mass and dry mass,
n2p the average ratio of nitrogen and phospherous masses,
p2afdm the average ratio of phospherous mass and ash-free-dry-mass,
p2dm the average ratio of phospherous mass and dry mass,
prot2dm the average ratio of protein mass and dry mass,
wm2wms the average ratio of wet mass and wet mass plus shell.

catalog

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
aqaconvert(x, stage = "adult", depth = 3, method, catalog = TRUE, relative = TRUE, verbose = FALSE)

dm2dms(x, stage = "adult", depth = 3, catalog = TRUE, relative = TRUE, verbose = FALSE)
afdm2afdms(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
dm2wm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
afdm2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
afdm2wm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
prot2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
carbohydr2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
lipid2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
c2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
n2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
p2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
c2afdm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
n2afdm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
p2afdm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
j2wm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
j2wms(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
j2dm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
j2dms(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
j2afdm(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
j2c(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
j2n(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
c2n(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 
c2p(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE)
n2p(x, stage = "adult", depth = 3,  catalog = TRUE, relative = TRUE, verbose = FALSE) 

Arguments

x

character vector or factor with species names or higher taxonomic units.

stage

Word. One of "adult", "juvenil", "larvae", "all", "nonadult" "nolarvae". Default is "adult".

method

Integer. Units to be converted. see Details.

depth

Integer. number of recursions in the taxonomic tree search depth=1 refers to species or source taxonomic level (see relative). Default is depth=3.

relative

Logical. Determins how argument depth is evaluated: If TRUE, the taxonomic level of the search determins search depth. If FALSE, depth count always starts at taxonomic level species. Default is relative=TRUE.

catalog

Logical. Lookup taxonomic tree information in a database in order to perform a search of higher taxonomic levels in conversion database if input is not found in conversion database

verbose

Logical. Gives some output while working

Details

Maybe you have measured dry mass of several aqatic species and need to know ash-free-dry-mass this can be achived by myspeciesdryweights*afdm2dm(myspeciesnames) . Behind the curtain, this function trys to find the given species names or higher taxonomic units in the conversion database of literature data and averages over all occurrences where the ratio of dry mass to afdm was determined. If the species is not in the database and catalog=TRUE, it is looked up in the the database (data(itis)) and the respective higer taxonomic units are looked up in the conversion database. How far upwards the taxonomic tree we look for empirical data, is determined by depth. depth=1 means we need an exact mach of given taxonomic units, depth=3 means for, e.g. species, (since it is species, genus, family, suborder, order, class, phylum, kingdom in conversion database) that we would accept an average value of the respective family but not higher up the taxonomic tree.

EXAMPLE:

Say you have ‘brachyura’ ‘callianassa tyrrhena’ ‘galathea intermedia’ in you specieslist, two species and a higher level taxonomic unit, e.g., afdm2dm(specieslist) will look in the conversion database for ‘brachyura’, find 134 entries under suborder of which 67 contain published empirical data regarding the ratio of dry to ash-free-dry mass. The other entries regard other conversions. The average value is returned. Same for ‘galathea intermedia’ which is in conversion database. In contrast, ‘callianassa tyrrhena’ is not found in the conversion database, so, since catalog=TRUE by default, ‘callianassa tyrrhena’ is looked up and found in the ITIS database and its taxonomic tree retrieved. ‘callianassa tyrrhena’ is of genus ‘callianassa’ which is then searched for but not found in conversion. Further, it is of subclass ‘callianassidae’ and here we get one hit in conversion where it is at family level. The respective value is returned.

depth controlles (together with relative) how far upward we climb the taxonomic tree. So far, the existing taxonomic hierarchy in conversion is: species, genus, family, suborder, order, class, phylum, kingdom.

Locating a taxonomic unit within the conversion database does not mean that the data we want is available. The higher we move up the taxonomic tree, the more likely we will get the required data (at the cost of higher uncertainty). If relative=TRUE we will accept to search depth taxonomic levels upward from the level of the given taxonomic unit (including that level. So, if species and depth=3, we'll search species, genus and family; if depth=5, we'll search species, genus, family, suborder and order; if the given the given taxonomic unit is of level family and depth=3, we will search family, suborder and order. depth=0 is not allowed!).

If relative=FALSE, wa always anchor at species level, no matter what taxonomic level the taxonomic unit that search for is located. So, if relative=FALSE, depth=3 we never search beyond family. One application of relative=TRUE is to prevent low level averages of e.g., kingdom to be found, when the search is populated with heavily heterogenous taxonomiv level like (species, family, species, order,...)

Note

Data in conv compiled by Thomas Brey, Corinna Müller-Wiegmann, Zora Zittier, Wilhelm Hagen

Author(s)

Jan M Holstein <holstein@uni-bremen.de>

References

T. Brey, C. Müller-Wiegmann, Z. Zittier, W. Hagen, 2010. Body composition in aquatic organisms–a global data bank of relationships between mass, element composition

Brey T, 2001. Population dynamics in benthic invertebrates. http://www.thomas-brey.de/science/

Examples

1
2
3
4
	myspecies<-data.frame(name=c("brachyura", 
		"callianassa tyrrhena", "galathea intermedia"),
		afdw=c(12.37,45.03,11.64))
	myspecies$afdw/afdm2dm(myspecies$name) #drymass

janhoo/benthos documentation built on May 21, 2019, 7:54 a.m.