#' Relabels vehtype
#'
#' Relabels VEHTYPE into 9 categories or get CMV vehicles. CMV needs TKBSCFG
#' \emph{TKBSCFG}. Large trucks are not always a CMV and vice versa (we don't typically use this query).
#' @param vehicle_df vehicle dataframe
#' @param relabel_by select either/all ("vehtype", "cmv)
#'
#' @return df with veh or cmv colnames
#' @export
#'
#' @examples
#' \dontrun{relabel_vehicle_variables(vehicle)}
relabel_vehicle_variables <-
function(vehicle_df, relabel_by = "vehtype") {
if (relabel_by %in% "vehtype") {
vehicle_df = vehicle_df |> dplyr::mutate(
veh =
dplyr::case_when(
.data[["VEHTYPE"]] %in% c("Motorcycle", "Moped") ~ "Motorcycle/Moped",
.data[["VEHTYPE"]] == "POLICE ON EMERGENCY" &
.data[["UNITTYPE"]] == "Motorcycle" ~ "Motorcycle/Moped",
.data[["VEHTYPE"]] %in% c(
"Passenger Car",
"(Sport) Utility Vehicle",
"Cargo Van (10,000 Lbs or Less)",
"Passenger Van",
"Utility Truck/Pickup Truck"
) ~ "Passenger Vehicle",
.data[["VEHTYPE"]] %in% c(
"Straight Truck",
"Truck Tractor (Trailer Not Attached)",
"Truck Tractor (Trailer Attached)",
"Truck Tractor (More Than One Trailer)"
) ~ "CMV",
# TKBSCFG != "" ~ "CMV",
.data[["VEHTYPE"]] %in% c(
"ATV/UTV (Utility Terrain Vehicle)",
"UTV (Utility Terrain Vehicle)",
"ATV"
) ~ "ATV/UTV",
.data[["VEHTYPE"]] == "Bicycle" ~ "Bicycle",
.data[["VEHTYPE"]] %in% c("School Bus", "Pupil Transportation School Bus") ~ "School Bus",
# .data[["VEHTYPE"]] %in% c("Moped", "Motorcycle") ~ "Moped/Motorcycle",
grepl("Emergency|EMERGENCY", .data[["VEHTYPE"]]) ~ "Emergency Vehicle",
grepl("Bus", .data[["VEHTYPE"]]) ~ "School/Passenger Bus",
# .data[["VEHTYPE"]] %in% c("POLICE ON EMERGENCY") ~ "Emergency Vehicle"
# TRUE ~ .data[["VEHTYPE"]]
TRUE ~ "Other"
)
)
}
if (relabel_by %in% "cmv") {
vehicle_df = dplyr::mutate(vehicle_df, cmv = ifelse(.data[["TKBSCFG"]] != "", "Y", "N"))
}
vehicle_df
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.