#' Add regions
#'
#' @param data Accident data from Destatis test
#' @param not_located All accidents that could not be located
#'
#' @return Accident data from Destatis with location information
#' @return all accidents that could not be located
#' @export
#'
#' @importFrom dplyr %>%
#' @importFrom dplyr mutate
#' @importFrom dplyr case_when
#' @importFrom readxl read_excel
#' @importFrom httr GET
#' @importFrom httr write_disk
function(data, not_located = FALSE) {
data <- data %>%
mutate(
UREGBEZ = case_when(ULAND %in% c('02', '11') ~ '0',
TRUE ~ as.character(UREGBEZ)),
UKREIS = case_when(ULAND %in% c('02', '11') ~ '00',
TRUE ~ as.character(UKREIS)),
UGEMEINDE = case_when(ULAND %in% c('02', '11') ~ '000',
TRUE ~ as.character(UGEMEINDE))
)
options(scipen = 999)
url1 <-
"https://www.bmvi.de/SharedDocs/DE/Anlage/G/regiostar-referenzdateien.xlsx?__blob=publicationFile"
GET(url1, write_disk(tf <- tempfile(fileext = ".xlsx")))
df <- read_excel(tf, sheet = 4)
df$gem <- as.character(df$gem)
data$gem <- paste0(data$ULAND, data$UREGBEZ, data$UKREIS, data$UGEMEINDE)
data$gem <- gsub('^0', '', data$gem)
data_m <- merge(x = data,
y = df,
by = "gem",
all.x = T)
not_located <- data_m[is.na(data_m$RegioStaR7), ]
options("scipen" = 0, "digits" = 7)
if (not_located == "FALSE")
return(data)
if (not_located == "TRUE")
return(not_located)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.