Skip to contents

Calculates zooplankton dry weight from rows where parameter equals "Length (mean)" using taxa-specific coefficients from inst/extdata/Mesozooplankton_Kattegat_Skagerrak_taxa_and_biomass_calculations.xlsx.

Usage

calc_zooplankton_dry_weight(
  data,
  length_parameter = "Length (mean)",
  dry_weight_parameter = "Dry weight",
  append = TRUE,
  keep_reference = FALSE
)

Arguments

data

A data frame or tibble in SHARK zooplankton format. Must contain the columns parameter, value, aphia_id, and dev_stage_code.

length_parameter

Character string giving the parameter name used for mean length. Defaults to "Length (mean)".

dry_weight_parameter

Character string used for the calculated dry weight rows. Defaults to "Dry weight".

append

Logical. If TRUE (default), append calculated dry-weight rows to data. If FALSE, return only the calculated dry-weight rows.

keep_reference

Logical. If TRUE, keep additional columns with the selected coefficients and reference metadata in the output.

Value

A tibble. By default, the original data are returned with calculated "Dry weight" rows appended. If append = FALSE, only the calculated rows are returned.

Details

The dry weight calculation follows:

DW = 10^((B * log10(length)) - A)

For nauplii (dev_stage_code == "NP"), taxon-specific nauplii coefficients are used when available. Otherwise, the general coefficients for "copepod nauplii *all copepod species" are used. All other development stages use the adult coefficients, defined in the reference list as rows with missing Stadium (NA in the workbook).

Matching is performed using aphia_id, as preferred for SHARK data. Taxa with no matching coefficient keep NA dry-weight values.

Reference coefficient table

Reference taxonAphiaIDStadiumBAReference
Acartia bifilosa345919adult2.967.71Hay 1991 (same as for A.clausi)
Acartia clausi149755adult2.967.71Hay 1991
Acartia longiremis346037adult2.967.71Hay 1991 (same as for A.clausi)
Acartia104108adult2.967.71Hay 1991 (same as for A.clausi)
Calanus finmarchicus104464adult2.696.88Hay 1991 (same as for C. helgolandicus)
Calanus finmarchicus104464NP2.035.38Hygum et al 2000
Centropages hamatus104496adult2.456.09Hay 1991
Centropages104159adult2.456.10Hay 1991
Centropages typicus104499adult2.456.10Hay 1991
Clausocalanus104161adult3.358.90Hay et al 1988
Corycaeus128634adult2.636.07Satapoomin 1999
Cyclopoida106415adult2.716.72Uye 1982 (Oithona)
Evadne nordmanni106273adult2.805.79Hernroth 1985
Fritillaria103358adult2.664.51Paffenhofer 1976 (same as for Oikopleura)
Harpacticoid copepod1102adult2.897.24Uye (equation "for all copepods")
copepod nauplii *all copepod species1080NP2.235.48Hay 1991 (same as for Pseudocalanus)
Metridia104190adult2.687.12Hirche & Mumm 1992
Microcalanus104164adult2.917.86Hay 1991 (same as for Temora, se Koski 2012)
Microsetella115341adult2.887.66Satapoomin 1999
Oikopleura dioica103407adult2.664.51Paffenhofer 1976
Oithona106485NP2.142.68Almeda et al 2010
Oithona similis106656adult2.716.72Uye 1982
Oncaea128690adult2.636.28Satapoomin 1999
Paracalanus parvus104685adult2.456.16Hay 1991
Penilia avirostris106272adult2.384.95Atienza et al 2006
Podon leukarti106277adult3.027.52Uye 1982
Podon polyphemoides159919adult2.756.60Uye 1982
Pseudocalanus104165adult3.008.37Hay et al 1988
Temora longicornis104878adult3.008.37Hay et al 1988

Examples

zoo <- dplyr::tibble(
  scientific_name = c("Acartia clausi", "Calanus finmarchicus", "Unknown taxon"),
  parameter = c("Length (mean)", "Length (mean)", "Length (mean)"),
  value = c(200, 250, 160),
  aphia_id = c(149755, 104464, 999999),
  dev_stage_code = c("AD", "NP", "NP")
)

calc_zooplankton_dry_weight(zoo, append = FALSE)
#> # A tibble: 3 × 5
#>   scientific_name      parameter  value aphia_id dev_stage_code
#>   <chr>                <chr>      <dbl>    <dbl> <chr>         
#> 1 Acartia clausi       Dry weight 0.129   149755 AD            
#> 2 Calanus finmarchicus Dry weight 0.307   104464 NP            
#> 3 Unknown taxon        Dry weight 0.272   999999 NP