Copernicus Climate Data Store

2. Setting Access Rights

Copy UUID and API KEY from: https://cds.climate.copernicus.eu/user

Add these to your R environment file by calling usethis::edit_r_environ() and add the following two key value pairs in R the environment file:

"COPERNICUS_CLIMATE_UUID" = "myuuid"
"COPERNICUS_CLIMATE_APIKEY" = "myapikey"

Restart R(Studio) now and set your access details as shown below:

ecmwfr::wf_set_key(user = Sys.getenv("COPERNICUS_CLIMATE_UUID"),
                   key = Sys.getenv("COPERNICUS_CLIMATE_APIKEY"),
                   service = "cds")

4. Create a query

Go to: https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-single-levels?tab=form

to create a query.

Copy to Rstudio -> mark all -> goto Tools -> Addins -> Browse_Addins -> ecmwfr -> Python to Mars -> in order to convert query to R list (see: https://cran.r-project.org/web/packages/ecmwfr/vignettes/cds_vignette.html for details)

5. Run your query


request <- list(
    product_type = "reanalysis",
    dataset_short_name = "reanalysis-era5-single-levels",
    file_format = "grib"
    variable = "2m_temperature",
    year = c("2010", "2011", "2012", "2013", "2014", 
             "2015", "2016", "2017", "2018", "2019", "2020"),
    month = c("01", "02", "03", "04", "05", "06", 
              "07", "08", "09", "10", "11", "12"),
    day = c("01", "02", "03", "04", "05", "06", "07", "08", "09", "10",
            "11", "12", "13", "14", "15", "16", "17", "18", "19", "20",
            "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31"),
    time = c("00:00", "01:00", "02:00", "03:00", "04:00", "05:00", "06:00",
             "07:00", "08:00", "09:00", "10:00", "11:00", "12:00", "13:00",
             "14:00", "15:00", "16:00", "17:00", "18:00", "19:00", "20:00",
             "21:00", "22:00", "23:00"),
    area = c(40, 116, 39, 117),
    target =  "download.grib")


  ecmwfr::wf_request(request = request,
                     transfer = TRUE,
                     path = export_dir,
                     verbose = FALSE)

Take a break and wait until request is finished this may take a few hours. To check the progress of the request visit: https://cds.climate.copernicus.eu/cdsapp#!/yourrequests

6. Load raster data


grib_file <- "download.grib"

meta <- kwb.satellite::get_metadata_era5(grib_file)

temperature <- raster::raster(grib_file)