#' @title Clean stops data
#' @description Clean and combine stops data from Opendata
#' @import data.table
#' @import fst
#' @param import_folder Folder where data is located
#' @param export_folder Folder to export dataset
#' @return CSV file of stops data
#' @export
clean_stops_data <- function(import_folder, export_folder) {
# Clean folder names
import_folder <- clean_folder(import_folder)
if (is.null(export_folder)) {
export_folder <- import_folder
} else {
export_folder <- clean_folder(export_folder)
}
# Clean stops file
stops <- paste0(import_folder, "stops.csv")
stops <- data.table::fread(stops, encoding = "UTF-8")
stops[stop_name == "Zürich, Kantonalbank", stop_name := "Zürich, Börsenstrasse"]
stops[stop_name == "Bhf. Wollishofen/Staubstrasse", stop_name := "Zürich, Bhf Wollishofen (Tram)"]
stops[stop_name == "Zürich, Bhf. Wollishofen/Werft", stop_name := "Zürich, Bhf Wollishofen (Bus)"]
luggwegstrasse <- data.table::data.table(
stop_name = "Zürich, Luggwegstrasse",
stop_lat = 47.389189,
stop_lon = 8.494737
)
stops <- data.table::rbindlist(list(stops, luggwegstrasse), fill = TRUE)
# Change encoding of data.table to native
character_columns <- names(stops)[lapply(stops, class) == "character"]
stops[, (character_columns) := lapply(.SD, enc2native), .SDcols = character_columns]
fwrite(stops, paste0(export_folder, "stops_cleaned.csv"))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.