Movatterモバイル変換


[0]ホーム

URL:


ssdtoolsssdtools logo of cumulative species sensitivity distribution with outlines of commonly used species as data

Lifecycle: stableR-CMD-checkCodecov test coverageCRAN statusCRAN downloads

ssdtools is an R package to fit and plot SpeciesSensitivity Distributions (SSD).

SSDs are cumulative probability distributions which are fitted totoxicity concentrations for different species as described by Posthumaet al. (2001). The ssdtools package uses Maximum Likelihood to fitdistributions such as the log-normal, log-logistic, log-Gumbel (alsoknown as the inverse Weibull), gamma, Weibull and log-normal log-normalmixture. Multiple distributions can be averaged using Akaike InformationCriteria. Confidence intervals on hazard concentrations and proportionsare produced by bootstrapping.

ssdtools can handle censored data with two limitations.It is currently only possible to model average when the distributionshave the same number of parameters and confidence intervals can only beestimated using non-parametric (as opposed to parametric)bootstrapping.

Introduction

The dependencyssddataprovides example data sets for several chemicals including Boron. TheECOTOX Knowledgebase is anothersource of toxicity concentrations for over 12,000 chemicals.

library(ssdtools)ssddata::ccme_boron#> # A tibble: 28 × 5#>    Chemical Species                  Conc Group        Units#>    <chr>    <chr>                   <dbl> <fct>        <chr>#>  1 Boron    Oncorhynchus mykiss       2.1 Fish         mg/L#>  2 Boron    Ictalurus punctatus       2.4 Fish         mg/L#>  3 Boron    Micropterus salmoides     4.1 Fish         mg/L#>  4 Boron    Brachydanio rerio        10   Fish         mg/L#>  5 Boron    Carassius auratus        15.6 Fish         mg/L#>  6 Boron    Pimephales promelas      18.3 Fish         mg/L#>  7 Boron    Daphnia magna             6   Invertebrate mg/L#>  8 Boron    Opercularia bimarginata  10   Invertebrate mg/L#>  9 Boron    Ceriodaphnia dubia       13.4 Invertebrate mg/L#> 10 Boron    Entosiphon sulcatum      15   Invertebrate mg/L#> # ℹ 18 more rows

The six default distributions are fit usingssd_fit_dists()

fits<-ssd_fit_dists(ssddata::ccme_boron)

and can be quickly plotted usingautoplot

autoplot(fits)

A plot of the data and fitted distributions

The goodness of fit can be assessed usingssd_gof

ssd_gof(fits,wt =TRUE)#> # A tibble: 6 × 14#>   dist     npars  nobs log_lik   aic  aicc delta    wt   bic    ad     ks    cvm#>   <chr>    <int> <int>   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>  <dbl>  <dbl>#> 1 gamma        2    28   -117.  238.  238. 0.005 0.357  240. 0.440 0.117  0.0554#> 2 lgumbel      2    28   -120.  244.  245. 6.56  0.013  247. 0.829 0.158  0.134#> 3 llogis       2    28   -119.  241.  241. 3.39  0.066  244. 0.487 0.0994 0.0595#> 4 lnorm        2    28   -118.  239.  240. 1.40  0.177  242. 0.507 0.107  0.0703#> 5 lnorm_l…     5    28   -115.  240.  243. 4.98  0.03   247. 0.320 0.116  0.0414#> 6 weibull      2    28   -117.  238.  238. 0     0.357  240. 0.434 0.117  0.0542#> # ℹ 2 more variables: at_bound <lgl>, computable <lgl>

and the model-averaged 5% hazard concentration estimated (withbootstrapping to get confidence intervals) usingssd_hc.

withr::with_seed(99, {  hc5<-ssd_hc(fits,ci =TRUE)})print(hc5)#> # A tibble: 1 × 15#>   dist    proportion   est    se   lcl   ucl    wt level est_method ci_method#>   <chr>        <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <chr>      <chr>#> 1 average       0.05  1.26 0.782 0.407  3.29     1  0.95 multi      weighted_sa…#> # ℹ 5 more variables: boot_method <chr>, nboot <dbl>, pboot <dbl>,#> #   dists <list>, samples <list>

Model-averaged predictions complete with confidence intervals canalso be estimated by parametric bootstrapping using thestats genericpredict.

boron_pred<-predict(fits,ci =TRUE)

The predictions can be plotted together with the original data usingssd_plot.

library(ggplot2)theme_set(theme_bw())ssd_plot(ssddata::ccme_boron, boron_pred,shape ="Group",color ="Group",label ="Species",xlab ="Concentration (mg/L)",ribbon =TRUE)+expand_limits(x =3000)+scale_colour_ssd()

A plot of the data and model-averaged prediction with confidence intervals

Information

Get started with ssdtools athttps://bcgov.github.io/ssdtools/articles/ssdtools.html.

A shiny app to allow non-R users to interface with ssdtools isavailable athttps://github.com/bcgov/shinyssdtools.

For the latest changes to the development version see theNEWS file.

For recent developments in SSD modeling including a review ofexisting software see:

Fox, D.R., et al. 2021. Recent Developments in SpeciesSensitivity Distribution Modeling. Environ Toxicol Chem 40(2): 293–308.https://doi.org/10.1002/etc.4925.

Citation

To cite package 'ssdtools' in publications use:  Thorley J, Fisher R, Fox D, Schwarz C (2025). "ssdtools v2: An R  package to fit Species Sensitivity Distributions." _Journal of Open  Source Software_, *10*(105), 7492. doi:10.21105/joss.07492  <https://doi.org/10.21105/joss.07492>.A BibTeX entry for LaTeX users is  @Article{,    title = {ssdtools v2: An R package to fit Species Sensitivity Distributions},    author = {Joe Thorley and Rebecca Fisher and David Fox and Carl Schwarz},    year = {2025},    journal = {Journal of Open Source Software},    volume = {10},    number = {105},    pages = {7492},    doi = {10.21105/joss.07492},  }

Installation

Release

To install the latest release version fromCRAN.

install.packages("ssdtools")

The website for the release version is athttps://bcgov.github.io/ssdtools/.

Development

To install the development version fromGitHub

# install.packages("remotes")remotes::install_github("bcgov/ssdtools")

or fromr-universe.

install.packages("ssdtools",repos =c("https://bcgov.r-universe.dev","https://cloud.r-project.org"))

The website for the development version is athttps://bcgov.github.io/ssdtools/dev/.

Getting Help or Reporting anIssue

To report bugs/issues/feature requests, please file anissue.

Contribution

If you would like to contribute to the package, please see ourCONTRIBUTINGguidelines.

Code of Conduct

Please note that the ssdtools project is released with aContributorCode of Conduct. By contributing to this project, you agree to abideby its terms.

References

Posthuma, L., Suter II, G.W., and Traas, T.P. 2001. SpeciesSensitivity Distributions in Ecotoxicology. CRC Press.

Licensing

Copyright 2015-2023 Province of British Columbia
Copyright 2021 Environment and Climate Change Canada
Copyright 2023-2025 Australian Government Department of Climate Change,Energy, the Environment and Water

The documentation is released under theCC BY 4.0License

The code is released under theApache License2.0


[8]ページ先頭

©2009-2025 Movatter.jp