MyNixOS website logo
Description

Select and Download Climate Data from 'DWD' (German Weather Service).

Handle climate data from the 'DWD' ('Deutscher Wetterdienst', see <https://www.dwd.de/EN/climate_environment/cdc/cdc_node_en.html> for more information). Choose observational time series from meteorological stations with 'selectDWD()'. Find raster data from radar and interpolation according to <https://bookdown.org/brry/rdwd/raster-data.html>. Download (multiple) data sets with progress bars and no re-downloads through 'dataDWD()'. Read both tabular observational data and binary gridded datasets with 'readDWD()'.

rdwd

rdwd is an R package to select, download and read climate data from the German Weather Service (Deutscher Wetterdienst, DWD).
The DWD provides thousands of datasets with weather observations online at opendata.dwd.de.
Since May 2019, rdwd also supports reading the Radolan (binary) raster data at grids_germany.

rdwd is available on CRAN: CRAN_Status_Badge downloads Rdoc "rdwd dependencies"

It has been presented at FOSDEM 2017 and UseR!2017 in Brussels and with a 5 Minute video at e-Rum2020, featured in Rstudio's data package list, written about in OSOR and used e.g. for NDR: Starkregen im Norden. Development of rdwd was triggered 2016 by flash flood research in Braunsbach (1, 2, 3, 4).

- HELP NEEDED
- with the new 5-minute data (April 2022), the fileIndex etc are getting very big.
- ideas on package size reduction are welcome at  https://github.com/brry/rdwd/issues/35

Documentation

A website with more information, examples, use cases and an interactive map of the DWD stations can be found at https://bookdown.org/brry/rdwd

Usage

Usage for observational weather data from the measuring stations usually looks something like the following:

# Download and install (once only):
install.packages("rdwd")
# Load the package into library (needed in every R session):
library(rdwd)

# select a dataset (e.g. last year's daily climate data from Potsdam city):
link <- selectDWD("Potsdam", res="daily", var="kl", per="recent")

# Actually download that dataset, returning the local storage file name:
file <- dataDWD(link, read=FALSE)
# Read the file from the zip folder:
clim <- readDWD(file, varnames=TRUE) # can happen directly in dataDWD

# Inspect the data.frame:
str(clim)
# Quick time series graphic:
plotDWD(clim, "FM.Windgeschwindigkeit")

For data interpolated onto a 1 km raster, including radar data up to the last hour, see the corresponding chapter on the website.

App

Since April 2023, there is an interactive app to compare weather periods:

With rdwd::app(), you can run this locally with cached data, i.e. faster responses.

New to R

If you're new to R, these links might help you to get started:

back to rdwd:

Installation

Normal

install.packages("rdwd")

Latest version

rdwd::updateRdwd()
# checks version and (if needed) calls  remotes::install_github("brry/rdwd", build_vignettes=TRUE)

Full

Suggested (not mandatory) dependencies:

install.packages("rdwd", dependencies="Suggests") 
  • RCurl for indexFTP and selectDWD(..., current=TRUE)
  • data.table, bit64 for readDWD(..., fread=TRUE)
  • terra, stars, R.utils, ncdf4, dwdradar for readDWD with gridded data
  • readr for readDWD.stand(..., fast=TRUE)
  • knitr, rmarkdown, testthat, roxygen2, devtools, remotes, XML, gsheet for local testing, development and documentation
  • leaflet, OSMscale for interactive/static maps, see OSMscale installation tips
  • shiny for the interactive weather comparison app

Note: on Linux (Ubuntu), install RCurl via the terminal (CTRL+ALT+T, note lowercase rcurl):

sudo apt install r-cran-rcurl
Metadata

Version

1.8.0

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows