Skip to content

AgrDataSci/climatrends

Repository files navigation

climatrends

JOSS status CRAN status cran checks Downloads lifecycle DOI

climatrends: Climate Variability Indices for Ecological Modelling

Overview

Understanding how climate variability influences ecological and agricultural systems is essential for climate adaptation, biodiversity conservation, and environmental modeling. climatrends provides a unified framework to compute temperature, precipitation, and crop-related climate indices. These indices serve as inputs for crop models, ecological analyses, phenology studies, and assessments of climate trends.

The methods implemented in climatrends have been applied in several research domains, including crop growing cycle analysis, regional climate trend detection, citizen science in agriculture, and studies comparing climate trends with farmers’ perceptions.

Statement of need

Reproducibility (being able to repeat an analysis) and replicability (being able to repeat an experiment) are essential principles in science, yet they remain challenging in many agricultural and ecological studies. Analyses often rely on custom scripts, inconsistent definitions of climate indices, or non-standard workflows, making results difficult to reuse across locations and seasons.

climatrends was developed to address this gap. The package evolved from a collection of scripts used in previous studies and now provides standardized, transparent, and reproducible methods to compute well-established climate indices. The functions are designed to handle heterogeneous testing environments—a common characteristic of decentralized agricultural trials—where locations differ in climate, timing, and growing seasons. The package also supports fixed-period time-series analysis and integrates smoothly with API-based climate data sources (e.g., nasapower).

The temperature, precipitation, and crop-sensitive indices implemented in climatrends draw from validated methods in climatology and crop science. The package is listed in the CRAN Task View for Agricultural Science.

Package website

https://agrdatasci.github.io/climatrends/

Installation

The package may be installed from CRAN via

install.packages("climatrends")

The development version can be installed via

library("remotes")
install_github("agrdatasci/climatrends", build_vignettes = TRUE)

Example

The default method for the function temperature() has as the basic input one numeric vector with the maximum temperature and one numeric vector with the minimum temperature:

library("climatrends")

data("innlandet", package = "climatrends")

temperature(innlandet$tmax, innlandet$tmin)

   maxDT  minDT maxNT  minNT   DTR    SU    TR   CFD  WSDI  CSDI   T10p  T90p
   <dbl>  <dbl> <dbl>  <dbl> <int> <int> <int> <int> <int> <int>  <dbl> <dbl>
1: 15.13 -14.86  6.77 -19.25     6     0     0   115     4     5 -15.81  9.09

The indices can be splitted in intervals for series analysis. Here we get the temperature indices with intervals of 30 days.

temperature(innlandet$tmax, innlandet$tmin,
            dates = innlandet$day, 
            timeseries = TRUE, 
            intervals = 30)

       id       date index  value
    <int>     <date> <chr>  <dbl>
1:      1 2019-01-01 maxDT  -0.15
2:      1 2019-01-01 minDT -14.86
3:      1 2019-01-01 maxNT  -3.41
4:      1 2019-01-01 minNT -18.67
5:      1 2019-01-01   DTR   4.35
---                              
68:     1 2019-05-31   CFD   3.00
69:     1 2019-05-31  WSDI   2.00
70:     1 2019-05-31  CSDI   3.00
71:     1 2019-05-31  T10p   0.20
72:     1 2019-05-31  T90p  11.14

Going further

The full functionality of climatrends is illustrated in the package vignette. The vignette can be found on the package website or from within R once the package has been installed, e.g. via

vignette("Overview", package = "climatrends")

Meta

About

Climate Variability Indices for Ecological Modelling

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •