climate4R

An R Framework for Climate Data Access and Post-processing

https://github.com/SantanderMetGroup/climate4R

Science Score: 39.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 19 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.7%) to scientific vocabulary

Keywords from Contributors

climate-change-atlas climate4r cmip6 cordex ipcc-regions warming-levels
Last synced: 10 months ago · JSON representation

Repository

An R Framework for Climate Data Access and Post-processing

Basic Info
  • Host: GitHub
  • Owner: SantanderMetGroup
  • Language: Jupyter Notebook
  • Default Branch: devel
  • Homepage:
  • Size: 295 MB
Statistics
  • Stars: 137
  • Watchers: 16
  • Forks: 44
  • Open Issues: 18
  • Releases: 3
Created over 7 years ago · Last pushed over 1 year ago
Metadata Files
Readme

README.md

R Framework for Climate Data Access and Post-processing

Binder

climate4R is a bundle of R packages for transparent climate data access, post-processing (including data collocation and bias correction / downscaling) and visualization. climate4R builds on two main data structures (grid and station, including metadata) to deal with gridded and point data from observations, reanalysis, seasonal forecasts and climate projections. It considers ensemble members as a basic dimension of the data structures. Moreover, climate4R is transparently (and remotely) connected to the Santander Climate Data Gateway, offering several state-of-the-art datasets (including CMIP5 and CORDEX subsets).

  • climate4R is formed by the following four core packages (all in GitHub): loadeR , transformeR, downscaleR and visualizeR. These packages are fully documented in the corresponding GitHub wikis.

  • climate4R capabilities are further extended by providing support to physical units handling (convertR package) and geoprocessing tasks (geoprocessoR package).

  • Compatibility with some external packages has been achieved by wrapping packages, thus enhancing climate4R with new functionalities (e.g. ETCCDI extreme climate indices via the climdex package).

  • Semantic provenance (metadata) information for climate4R products can be generated using METACLIP via the metaclipR package.

  • Conda and docker climate4R installations available. The docker file also includes the jupyter framework. This is the base layer for the climate4R Hub (a cloud-based computing facility to run climate4R notebooks at IFCA/CSIC Cloud Services).

References and Examples

The formal reference of climate4R is:


M. Iturbide, J. Bedia, S. Herrera, J. Bao-Medina, J. Fernndez, M.D. Fras, R. Manzanas, D. San-Martn, E. Cimadevilla, A.S. Cofio and JM Gutirrez (2019) The R-based climate4R open framework for reproducible climate data access and post-processing. Environmental Modelling & Software, 111, 42-54. DOI: /10.1016/j.envsoft.2018.09.009


Additional references for specific components of climate4R (with worked examples) are Cofio et al. 2018 (seasonal forecasting ), Fras et al. 2018 (visualization), Bedia et al. 2019 (data provenance) and Bedia et al. 2019a (statistical downscaling). Other publications describing applications in sectoral impact studies (also with worked out examples) are Bedia et al. (2018) (fire danger) or Iturbide et al. (2018) (Species distribution models), among others. <!-- * Cofio et al. 2018 (seasonal forecasting ) * Fras et al. 2018 (visualization).

Other publications describing applications of climate4R in sectoral impact studies (with worked out examples):

  • Fire danger: Bedia et al. (2018) Seasonal predictions of Fire Weather Index: Paving the way for their operational applicability in Mediterranean Europe. Climate Services, 9, 101-110.

  • Species distribution models: Iturbide et al. (2018) Tackling Uncertainties of Species Distribution Model Projections with Package mopa. The R Journal, 10(1), 122-139. -->

Moreover, there is a notebook repository including several illustrative notebooks with worked-out examples (which are companion material of several papers).

Installation

The climate4R framework relies on a wealth of other R packages and bindings to third-party libraries. Therefore, the recommended installation is through the conda package below, which ensures the proper installation of all dependencies.

Installation using miniconda:

Miniconda is a free minimal installer for conda. The conda recipe installs an up-to-date version of the different packages composing the climate4R framework, along with the associated library dependencies (udunits, openjdk, netcdf Java etc.), avoiding potential problems like the R-java configuration etc. Note that the appropriate miniconda distribution must be installed (go to the miniconda installers page) before running the following commands. We recommend starting from a clean environment (named climate4R in this example):

bash conda create --name climate4R conda activate climate4R

In this environment, install climate4R by issuing:

bash conda install -c conda-forge -c r -c defaults -c santandermetgroup climate4r

Activate the conda environment to work with climate4R. Deactivate the environment with:

bash conda deactivate

Direct package installation from github:

Individual packages can be installed directly from the github sources.

r > library(devtools) > install_github(c("SantanderMetGroup/loadeR.java", "SantanderMetGroup/climate4R.UDG", "SantanderMetGroup/loadeR", "SantanderMetGroup/transformeR", "SantanderMetGroup/visualizeR", "SantanderMetGroup/downscaleR"))

NOTE: installation of specific package versions

In case a particular paper notebook is to be replicated, the installation of specific version tags can be done by just explicitly indicating the tag number in the repo name. For example:

```r

devtools::installgithub("SantanderMetGroup/visualizeR@v1.0.0") `` installs thevisualizeR` package version used in Fras _et al. 2018, while the following

```r

devtools::installgithub("SantanderMetGroup/visualizeR@v1.4.6") ``` will install a more recent version of the package used in the paper by Iturbide _et al. 2019.

Example of use

Examples of use of the climate4R framework are given in the reference papers above. In the following we illustrate the main functionalities of climate4R with a simple example, consisting on calculating an ETCCDI index (Summer Days) from bias corrected EURO-CORDEX data over Southern Europe. More details at the brief introduction to climate4R document in the man folder and full code at the companion jupyter notebook.


User Support

Please note that the pool of people who can provide support for climate4R packages is very small and our time for support is limited. We don't necessarily have the capacity for long, open-ended user support. Please follow these basic guidelines before posting:

  • Introduce the problem before you post any code
  • Help others reproduce the problem
  • Avoid sending the same question to multiple places

These posting guidelines at stackoverflow provide further recommendations on how to make a good question. If questions are kept short, specific and direct, there's a greater chance that someone will take on the ticket.


Owner

  • Name: Santander Meteorology Group (UC-CSIC)
  • Login: SantanderMetGroup
  • Kind: organization
  • Location: Santander

a multidisciplinary approach to weather & climate

GitHub Events

Total
  • Issues event: 1
  • Watch event: 7
  • Push event: 2
  • Pull request event: 2
  • Create event: 1
Last Year
  • Issues event: 1
  • Watch event: 7
  • Push event: 2
  • Pull request event: 2
  • Create event: 1

Committers

Last synced: 11 months ago

All Time
  • Total Commits: 183
  • Total Committers: 7
  • Avg Commits per committer: 26.143
  • Development Distribution Score (DDS): 0.716
Past Year
  • Commits: 1
  • Committers: 1
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Your Name m****e@g****m 52
Jose M. Gutierrez g****m@u****s 48
zequihg50 e****a@u****s 40
Joaquin Bedia j****a@g****m 31
Antonio S. Cofino c****a@g****m 5
Jesus Fernandez j****f 5
Rodrigo Manzanas r****s 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 28
  • Total pull requests: 15
  • Average time to close issues: 4 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 21
  • Total pull request authors: 6
  • Average comments per issue: 1.57
  • Average comments per pull request: 0.13
  • Merged pull requests: 12
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 11 minutes
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • catubela (4)
  • cs2239 (3)
  • miturbide (2)
  • Fisico2k (2)
  • mazanetti (1)
  • Nirav11 (1)
  • jgserra18 (1)
  • fmanquehual (1)
  • SballarinAndre (1)
  • cyndyfem (1)
  • louwangzhiyuwhy (1)
  • danielmerbet (1)
  • machooljoy (1)
  • Vik-1 (1)
  • Sarasanzs (1)
Pull Request Authors
  • jbedia (5)
  • cofinoa (5)
  • zequihg50 (3)
  • RSO9192 (1)
  • jesusff (1)
  • nuest (1)
Top Labels
Issue Labels
bug (1)
Pull Request Labels

Dependencies

Dockerfile docker
  • jupyter/base-notebook latest build
docker/Dockerfile docker
  • jupyter/base-notebook latest build