loadeR

An R package for climate data access building on the NetCDF-Java API.
https://github.com/SantanderMetGroup/loadeR

Category: Climate Change
Sub Category: Climate Data Access and Visualization

Keywords from Contributors

climate-change-atlas climate4r cmip6 cordex ipcc-regions warming-levels

Last synced: 4 minutes ago
JSON representation

Repository metadata

A climate4R package for data access

README.md

What is loadeR?

loadeR is an R package for climate data access building on the NetCDF-Java API. It allows user-friendly data access either from local or remote locations (e.g. OPeNDAP servers) and it is fully integrated with the User Data Gateway (UDG), a Climate Data Service deployed and maintained by the Santander Meteorology Group. loadeR has been conceived to work in the framework of both seasonal forecasting and climate change studies. Thus, it considers ensemble members as a basic dimension of its two main data structures (grid and station). Find out more about this package at the loadeR wiki.

This package is part of the climate4R framework, formed by loadeR, transformeR, downscaleR, visualizeR and other packages dealing with climate data analysis and visualization.

The recommended installation procedure (for loader and the companion loadeR.java and climate4R.UDG packages) is to use the install_github command from the devtools R package (see the installation info in the wiki):

devtools::install_github(c("SantanderMetGroup/loadeR.java", "SantanderMetGroup/climate4R.UDG", "SantanderMetGroup/loadeR"))

IMPORTANT: On OS X, be sure to execute this in R started from the Terminal, not the R App! (This is because the R app doesn’t honor $PATH changes in ~/.bash_profile)

IMPORTANT: The package requires Java version 1.7 or higher. Several recommendations for known problems with R and Java are given in the wiki installation info).

NOTE: loadeR is enhanced by loadeR.ECOMS package which allows to remotely access harmonized data from several state-of-the-art seasonal forecasting databases stored at the ECOMS-UDG.

Testing loadeR

Setting Up the Test Environment:

  1. Create a Conda environment with R 3.6 and the packages that loadeR depends on:
conda create -n c4r-loader-tests -c conda-forge r-base=3.6 r-loader.java "r-climate4r.udg>=0.2.0" r-abind r-rcurl 
  1. Install the packages needed for testing:
conda install -c conda-forge r-devtools r-covr libnetcdf

The r-devtools package is used to run the test suite, without requiring the package to be formally installed. The r-covr package allows you to compute test coverage. Finally, libnetcdf is needed to generate temporary .nc files from .cdl definitions included in the package. These NetCDF files are created and deleted dynamically during testing, and serve as input data for specific test cases. If you use R versions 4.3 or 4.4 on Windows, you may encounter compatibility issues with the r-devtools package. It is recommended to use R 3.6 for full compatibility.

Running the Tests:

  1. Before running any tests, you need to clone the loadeR package repository locally:
git clone https://github.com/SantanderMetGroup/loadeR.git
cd loadeR

This puts you in the root directory of the package.

  1. Make sure to activate the environment you created earlier:
conda activate c4r-loader-tests
  1. Once you're in the root directory of the cloned package and the environment is active, run the following command to execute the test suite:
Rscript -e "devtools::test()"

The test() function from the devtools package runs all tests located in the tests/testthat/ directory of the package without requiring the package to be installed. It is a shortcut for testthat::test_dir(), and automatically reloads the package code using devtools::load_all() before running the tests. This means that any changes made to the functions in the package are detected immediately when the tests are run.

  1. Once you're in the root directory of the cloned package and the environment is active, run the following command to check the test coverage:
Rscript -e "covr::package_coverage()"

This command returns the coverage percentage for each R file in the package, indicating how much of the code is exercised by the test suite.

Note: you can also develop and use the package outside the test suite. To do so, start an R session from the root directory of the package (with the environment activated), and run:

devtools::load_all()

This will simulate loading the package from the local source directory (where you're located) and make all its functions available in the R session. Any change you make to the R scripts will be picked up the next time you run devtools::load_all(). After that, you can call the functions normally from your R session, and they will reflect your latest changes without requiring installation.


Reference and further information:

[General description of the climate4R framework] Iturbide et al. (2019) The R-based climate4R open framework for reproducible climate data access and post-processing. Environmental Modelling and Software, 111, 42-54. https://doi.org/10.1016/j.envsoft.2018.09.009
Check out the companion notebooks with worked examples.

[Statistical Downscaling] Bedia et al. (2020). Statistical downscaling with the downscaleR package (v3.1.0): contribution to the VALUE intercomparison experiment. Geoscientific Model Development, 13, 1711–1735. https://doi.org/10.5194/gmd-13-1711-2020

[Seasonal forecasting applications] Cofiño et al. (2018) The ECOMS User Data Gateway: Towards seasonal forecast data provision and research reproducibility in the era of Climate Services. Climate Services, 9, 33-43. http://doi.org/10.1016/j.cliser.2017.07.001

[Example of a sectoral application (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. http://doi.org/10.1016/j.cliser.2017.04.001


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: about 24 hours ago

Total Commits: 395
Total Committers: 12
Avg Commits per committer: 32.917
Development Distribution Score (DDS): 0.559

Commits in past year: 5
Committers in past year: 3
Avg Commits per committer in past year: 1.667
Development Distribution Score (DDS) in past year: 0.4

Name Email Commits
jbedia j****a@g****m 174
Your Name m****e@g****m 127
Sixto Herrera García h****s@u****s 55
Jose M. Gutierrez g****m@u****s 19
Jorge b****a@i****s 6
Ezequiel Cimadevilla Alvarez e****a@u****s 4
Jorge Bano Medina j****a@M****l 3
mor427unican m****7@a****s 3
Antonio S. Cofiño c****a@g****m 1
Etienne Tourigny e****y@b****s 1
María Isabel de la Osa Rocha 1****n@u****m 1
jesusff j****f@u****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 6 days ago

Total issues: 81
Total pull requests: 6
Average time to close issues: 4 months
Average time to close pull requests: 6 months
Total issue authors: 47
Total pull request authors: 6
Average comments per issue: 2.23
Average comments per pull request: 1.67
Merged pull request: 2
Bot issues: 0
Bot pull requests: 0

Past year issues: 2
Past year pull requests: 1
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 2
Past year pull request authors: 1
Past year average comments per issue: 0.0
Past year average comments per pull request: 0.0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/SantanderMetGroup/loadeR

Top Issue Authors

  • matteodefelice (14)
  • jbedia (6)
  • cofinoa (5)
  • xiaoyujiaxyj (3)
  • gcurci (3)
  • sixtohg (2)
  • jesusff (2)
  • dinilu (2)
  • zepedromvramiao (2)
  • cherryniu (2)
  • rmanzanas (2)
  • ABY1950 (2)
  • jpvergnes (2)
  • wspt96 (1)
  • dhruv2207 (1)

Top Pull Request Authors

  • matteodefelice (1)
  • etiennesky (1)
  • miturbide (1)
  • mor427unican (1)
  • sixtohg (1)
  • cofinoa (1)

Top Issue Labels

  • enhancement (13)
  • help wanted (8)
  • bug (3)
  • question (2)
  • wontfix (1)

Top Pull Request Labels


Package metadata

proxy.golang.org: github.com/santandermetgroup/loader

conda-forge.org: r-loader

  • Homepage: https://github.com/SantanderMetGroup/climate4R
  • Licenses: GPL-3.0-or-later
  • Latest release: 1.7.1 (published over 3 years ago)
  • Last Synced: 2025-09-02T07:56:12.426Z (10 days ago)
  • Versions: 2
  • Dependent Packages: 2
  • Dependent Repositories: 2
  • Rankings:
    • Dependent packages count: 19.581%
    • Dependent repos count: 20.06%
    • Average: 33.902%
    • Forks count: 42.521%
    • Stargazers count: 53.446%
conda-forge.org: r-loader.2nc

  • Homepage: https://github.com/SantanderMetGroup/loadeR/wiki
  • Licenses: GPL-3.0-or-later
  • Latest release: 0.1.2 (published over 3 years ago)
  • Last Synced: 2025-09-11T11:40:00.663Z (1 day ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 2
  • Rankings:
    • Dependent repos count: 20.06%
    • Average: 41.892%
    • Forks count: 42.521%
    • Dependent packages count: 51.54%
    • Stargazers count: 53.446%

Dependencies

DESCRIPTION cran
  • R >= 3.5.0 depends
  • climate4R.UDG >= 0.2.0 depends
  • loadeR.java * depends
  • rJava * depends
  • RCurl * imports
  • abind * imports
  • utils * imports
  • downscaleR * suggests
  • loadeR.ECOMS * suggests
  • transformeR * suggests
  • visualizeR * suggests

Score: 8.1886891244442