Preliminary assessment of species conservation status following IUCN Criterion A, which is based on population size reductions (Criteria A1, A2, A3, and A4)

criterion_A(
  x,
  years = NULL,
  assess.year = NULL,
  project.years = NULL,
  generation.time = NULL,
  models = c("linear", "quadratic", "exponential", "logistic", "general_logistic",
    "piecewise"),
  subcriteria = c("A1", "A2", "A3", "A4"),
  exploitation = NULL,
  correction = NULL,
  data.type = NULL,
  nature.evidence = NULL,
  A1.threshold = c(50, 70, 90),
  A234.threshold = c(30, 50, 80),
  all.cats = TRUE,
  parallel = FALSE,
  NbeCores = 2,
  show_progress = TRUE,
  ...
)

Arguments

x

a vector (one species) or a data frame (multiple species/ subpopulations) containing the population size per year, from the oldest to the most recent population estimate.

years

a vector containing the years for which the population sizes are available (i.e. time series). It can be NULL if x contains the years as names.

assess.year

numeric. The year for which the assessment should be performed.

project.years

a vector containing the years for which population sizes were or should be projected.

generation.time

a value or vector of generation lengths, i.e. the average age of parents of the current cohort (IUCN 2019).

models

a vector containing the names of the models to be fitted to species population size to perform projections.

subcriteria

a vector containing the sub-criteria that should be included in the assessment (i.e. A1, A2, A3 and/or A4).

exploitation

a value or vector of levels of exploitation, that should be provided as the reduction in population size caused by the exploitation (in %).

correction

a value or vector of correction values, that should applyed to the reduction in population size estimated from 'x'.

data.type

a character corresponding to the type of data (IUCN 2019): "observation", "index" or "AOO_EOO" (only these types are currently implemented)

nature.evidence

a character corresponding to the nature of evidence (IUCN 2019): "observed", "estimated", "projected", "inferred" or "suspected"

A1.threshold

numeric vector with the A1 thresholds to convert decline estimates into categories. Default values are the thresholds recommended by the IUCN.

A234.threshold

numeric vector with the A2, A3, and A4 thresholds to convert decline estimate into categories. Default values are the thresholds recommended by the IUCN.

all.cats

logical. Should the categories from all criteria be returned and not just the consensus categories?

parallel

logical. Should calculations be parallelized? Default to FALSE.

NbeCores

integer. Number of cores for parallel computing. Default to 2.

show_progress

logical. Should the progress bar be displayed? Default to TRUE.

...

other parameters to be passed as arguments for function pop.decline.fit

Value

A data frame containing, for each taxon, the year of assessment, the time interval of the assessment (include past and future estimates, if any), the population size in the interval of assessment, the reduction of the population size using the chosen sub-criteria (A1, A2, A3, and A4), the model used to obtain the projections of population size (if used), the IUCN categories associated with these sub-criteria and the consensus category for criterion A.

Details

As described in IUCN (2019), the choice between criteria A1 or A2 depends on three conditions: the reduction must be reversible, the causes of the reduction must be understood, and the threats must have ceased. "If any of the three conditions (reversible and understood and ceased) are not met (...), then A2 should be used instead of A1" (IUCN, 2019).

Some important notes. The function can return the predictions of population estimates for years not in the observed data, based on the fit of a set of different statistical models. As stated in IUCN (2019), the model used to make the predictions can result in very different estimates. So, it is preferable that the user choose one or two of the models based on the best available information on types of threat (i.e. patterns of exploitation or habitat loss), life history and ecology of the taxon being evaluated or any other processes that may contribute to population decline. See IUCN (2019) for more details on the assumptions of each model. The selection of models based solely on their fit to population size should only be used for larger time series (Number of observations > 10).

Some more technical notes. If years is a subset of all the years contained in x, then x is filtered based on years. So, make sure you have selected the right years. If the year of assessment is not given, the most recent year is taken instead. The function accepts a single generation length for all species or species-specific generation lengths. In the latter case, it is necessary to provide exactly one value for each species analyzed. Currently, only one assessment year can be assigned for all taxa. Similarly, only one vector of years with population size available. Thus, it is advised not to mix taxa with great differences in generation length.

As for generation lengths, the function accepts single and species-specific reductions of population size due to actual or potential exploitation of the species (see IUCN subcriterion A2d), via the argument exploitation. Here, this reduction is applied on top of the reduction obtained from the vector of population sizes per year provided in x, and only for the subcriterion A2. Thus, this argument should be used when users want to account for an extra reduction due to other causes, such as harvesting-related or habitat quality-related reductions on top of the ones obtained from habitat loss-population size relationships. If exploitation is not empty, a new column is added to the output ('basis_d') in which a short report of the impact of the added reduction is provided. If one or more species have no evidence of exploitation just enter the value zero. Values can range between 0 and 100%.

Differently than the argument exploitation explained above, the argument correction applies any correction desired to the reduction obtained from the vector of population sizes per year provided in x and this correction is applied for the subcriteria A1 and A2. Here, values should be positive (and generally below 100) and if one or more species do not need for correction just enter the value one. Values between zero and one will reduced the value of population size reduction and values above one will increase them.

Population size reduction can be negative (i.e. population size increase). But final reduction values above 100% will be reduced to 100% for any subcriterion (A1, A2, A3 and A4) with a warning.

References

IUCN 2019. Guidelines for Using the IUCN Red List Categories and Criteria. Version 14. Standards and Petitions Committee. Downloadable from: http://www.iucnredlist.org/documents/RedListGuidelines.pdf.

Author

Renato A. Ferreira de Lima & Gilles Dauby

Examples

## Simplest example: one species, two observations in time, one subcriterion
 pop = c("1970" = 10000, "2000" = 6000)
 criterion_A(x = pop,
  years = c(1970, 2000), 
  assess.year = 2000,
  project.years = NULL,
  subcriteria = c("A2"),
  generation.time = 10)
#> Warning: The following subcriteria were not used in the assessment:  A1, A3, A4
#>         tax assessment.year assessment.period assessment.pop.sizes
#> 1 species 1            2000         1970-2000           10000-6000
#>   reduction_A12 A2 category_A_code
#> 1            40 VU              A2
  
## Another example: one species, more observations and subcriteria
pop = c("1970" = 10000, "1980" = 8900, "1990" = 7000, "2000" = 6000, "2030" = 4000)
criterion_A(x = pop,
  years = c(1970, 1980, 1990, 2000, 2030), 
  assess.year = 2000,
  project.years = c(2010, 2020, 2030),
  subcriteria = c("A1", "A2", "A3", "A4"),
  generation.time = 10)
#> Computing the predictions based on population trends...
#> 
  |                                                                            
  |                                                                      |   0%
  |                                                                            
  |======================================================================| 100%
#>         tax assessment.year assessment.period assessment.pop.sizes
#> 1 species 1            2000    1970-2000-2030    10000-6000-5260.6
#>   predictive.model reduction_A12 reduction_A3 reduction_A4 category_A
#> 1      exponential            40     33.33333     40.89213         VU
#>   category_A_code       A1 A2 A3 A4
#> 1        A2+A3+A4 LC or NT VU VU VU
  
## Another example: subcriterion A2 and exploitation (A2d)
 pop = c("1980" = 9000, "1985" = 7500, "1990" = 6000)
 criterion_A(x = pop,
  years = c(1980, 1985, 1990), 
  assess.year = 2000,
  project.years = NULL,
  subcriteria = c("A2"),
  generation.time = 10,
  exploitation = 5)
#> Warning: Year of assessment not in the provided time series: assuming the closest year: 1990
#> Computing the predictions based on population trends...
#> 
  |                                                                            
  |                                                                      |   0%
  |                                                                            
  |======================================================================| 100%
#> Warning: no residual degrees of freedom (other warnings expected)
#> breakpoint estimate(s): 26.19736 
#> Warning: No piece-wise model was fit to population data due to lack of convergence, probably caused by too few observations
#> 
#> Warning: The following subcriteria were not used in the assessment:  A1, A3, A4
#>         tax assessment.year assessment.period assessment.pop.sizes
#> 1 species 1            1990         1960-1990           15000-6000
#>   predictive.model reduction_A12 A2 category_A_code
#> 1           linear            65 EN              A2
#>                                     basis_d
#> 1 Extra reduction: 5%; no change in ranking

## The data and criterion A assessment as described in IUCN (2019)
#available at: https://www.iucnredlist.org/resources/criterion-a
data(example_criterionA)
criterion_A(example_criterionA,
  years = seq(1970, 2000, by = 2), 
  assess.year = 2000,
  project.years = seq(2002, 2030, by = 2),
  subcriteria = c("A1", "A2", "A3", "A4"),
  generation.time = 10)
#> Warning: Only one generation length provided for two or more taxa: assuming the same value for all taxa
#>         tax assessment.year assessment.period assessment.pop.sizes
#> 1 species 1            2000    1970-2000-2030      10000-6700-4000
#> 2 species 2            2000    1970-2000-2030      10000-6955-3475
#> 3 species 3            2000    1970-2000-2030      10021-7053-3958
#> 4 species 4            2000    1970-2000-2030       9910-6539-4312
#> 5 species 5            2000    1970-2000-2030       9959-7384-3166
#> 6 species 6            2000    1970-2000-2030       9991-7070-6375
#>   reduction_A12 reduction_A3 reduction_A4 category_A category_A_code       A1
#> 1      33.00000    40.298507     57.88382         EN              A4 LC or NT
#> 2      30.45000    50.035945     43.78145         EN              A3 LC or NT
#> 3      29.61780    43.882036     41.67952         VU           A3+A4 LC or NT
#> 4      34.01615    34.057195     33.44988         VU        A2+A3+A4 LC or NT
#> 5      25.85601    57.123510     53.17919         EN           A3+A4 LC or NT
#> 6      29.23631     9.830269     31.31467         VU              A4 LC or NT
#>         A2       A3 A4
#> 1       VU       VU EN
#> 2       VU       EN VU
#> 3 LC or NT       VU VU
#> 4       VU       VU VU
#> 5 LC or NT       EN EN
#> 6 LC or NT LC or NT VU

## Same data and options but assuming different generation length for each taxon
criterion_A(example_criterionA,
  years = seq(1970, 2000, by = 2), 
  assess.year = 2000,
  project.years = seq(2002, 2030, by = 2),
  subcriteria = c("A1", "A2", "A3", "A4"),
  generation.time = c(2,5,10,15,30,50))
#> Warning: Three times the generation length was smaller than 10 years for one or more species: assuming 10 years
#> Warning: Maximum projection of population sizes is more than 100 years into the future: assuming 100 years after the year of assessment
#> Computing the predictions based on population trends...
#> 
  |                                                                            
  |                                                                      |   0%
  |                                                                            
  |============                                                          |  17%
  |                                                                            
  |=======================                                               |  33%
  |                                                                            
  |===================================                                   |  50%
#> Warning: A linear or quadratic model was also selected among the candidate models but was not considered as the best model
#> 
  |                                                                            
  |===============================================                       |  67%
  |                                                                            
  |==========================================================            |  83%
  |                                                                            
  |======================================================================| 100%
#> Warning: The following subcriteria had population increase for one or more species:  A3
#>         tax assessment.year assessment.period assessment.pop.sizes
#> 1 species 1            2000    1990-2000-2010       9100-6700-4600
#> 2 species 2            2000    1985-2000-2015   7661.9-6955-7879.4
#> 3 species 3            2000    1970-2000-2030      10021-7053-3958
#> 4 species 4            2000    1955-2000-2045  11959.1-6539-3564.8
#> 5 species 5            2000    1910-2000-2090    10028-7384-6644.1
#> 6 species 6            2000    1850-2000-2100     9991-7070-7004.5
#>   predictive.model reduction_A12 reduction_A3 reduction_A4 category_A
#> 1             <NA>     26.373626   31.3432836    32.908163         VU
#> 2        quadratic      9.226171  -13.2911574     8.051296   LC or NT
#> 3             <NA>     29.617803   43.8820360    41.679518         VU
#> 4      exponential     45.321972   45.4840190    45.926573         VU
#> 5 general_logistic     26.366175   10.0203142    33.744515         VU
#> 6 general_logistic     29.236313    0.9264498    29.891903   LC or NT
#>   category_A_code       A1       A2       A3       A4
#> 1           A3+A4 LC or NT LC or NT       VU       VU
#> 2     A1+A2+A3+A4 LC or NT LC or NT LC or NT LC or NT
#> 3           A3+A4 LC or NT LC or NT       VU       VU
#> 4        A2+A3+A4 LC or NT       VU       VU       VU
#> 5              A4 LC or NT LC or NT LC or NT       VU
#> 6     A1+A2+A3+A4 LC or NT LC or NT LC or NT LC or NT