R/data_corona.R

Defines functions data_corona

Documented in data_corona

#' Download der offiziellen österreichischen Covid-19 Daten
#' 
#' [data_corona()] holt die Daten der Covid-19 Fälle (Quelle ist
#' `info.gesundheitsministerium.at`) und gibt einzelne Komponenten als 
#' `data.frames` zurück. Zusätzlich ist der Timeststamp der Erzeugung enthalten.
#'
#' @param timestamp Zeitpunkt, auf den sie der Datenbestand bezieht. Der Default
#'   (`NULL`) wählt stets den neuesten Datenbestand aus.
#' @return eine `liste` mit folgenden Elementen
#' - `allgemein:` `data.frame` mit allgemeinen Daten über Erkrankungen, Hospitalisierungen 
#' und Fälle in Intensivbehandlung
#' - `bezirke:` `data.frame` mit Daten nach Bezirken
#' - `alter:` `data.frame` mit Daten nach Altersgruppen
#' - `geschlecht`: `data.frame` mit Daten nach Geschlecht
#' - `bundesland:` `data.frame` mit Daten nach Bundeslaendern
#' - `trend:` `data.frame` mit Österreichdaten nach Tagen
#' - `timestamp`: Datum der letzten Aktualisierung
#' @export
#' @examples
#' data_corona()
data_corona <- function(timestamp = NULL) {
  .get_latest <- function(x, ts) {
    x <- subset(x, date == ts)
    x$date <- NULL
    rownames(x) <- NULL
    x
  }
  x <- data_corona_ts()
  ts <- switch(is.null(timestamp) + 1, as.POSIXct(timestamp), max(x$ts_allgemein$date))
  list(
    allgemein = .get_latest(x$ts_allgemein, ts = ts),
    bezirke = .get_latest(x$ts_bezirke, ts = ts),
    alter = .get_latest(x$ts_alter, ts = ts),
    geschlecht = .get_latest(x$ts_geschlecht, ts = ts),
    bundesland = .get_latest(x$ts_bundesland, ts = ts),
    trend = x$ts_total,
    timestamp = ts
  )
}
statistikat/coronar documentation built on April 6, 2020, 6:25 p.m.