data-raw/usager.R

## code to prepare `usager` dataset goes here

library(conflicted)
library(data.table)
library(purrr)
library(dplyr)
library(lubridate)

usager <- list.files("./data-raw/raw", pattern = "^usagers", full.names = TRUE) %>%
  map(fread, colClasses = "character", encoding = "UTF-8", na.strings = c("", "NA")) %>%
  bind_rows() %>%
  as_tibble() %>%
  set_names(tolower) %>%
  mutate(
    catu = case_when(
      catu %in% "1" ~ "Conducteur",
      catu %in% "2" ~ "Passager",
      catu %in% "3" ~ "Piéton",
      catu %in% "4" ~ "Piéton en roller ou en trottinette",
      TRUE ~ NA_character_
    ),
    grav = case_when(
      grav %in% "1" ~ "Indemne",
      grav %in% "2" ~ "Tué",
      grav %in% "3" ~ "Blessé hospitalisé",
      grav %in% "4" ~ "Blessé léger",
      TRUE ~ NA_character_
    ),
    sexe = case_when(
      sexe %in% "1" ~ "Masculin",
      sexe %in% "2" ~ "Féminin",
      TRUE ~ NA_character_
    ),
    an_nais = as.numeric(an_nais),
    trajet = case_when(
      trajet %in% "1" ~ "Domicile – travail",
      trajet %in% "2" ~ "Domicile – école",
      trajet %in% "3" ~ "Courses – achats",
      trajet %in% "4" ~ "Utilisation professionnelle",
      trajet %in% "5" ~ "Promenade – loisirs",
      trajet %in% "9" ~ "Autre",
      TRUE ~ NA_character_
    ),
    locp1 = case_when(
      locp %in% as.character(1:2) ~ "Sur chaussée",
      locp %in% as.character(3:4) ~ "Sur passage piéton",
      locp %in% as.character(5:8) ~ "Divers",
      TRUE ~ NA_character_
    ),
    locp2 = case_when(
      locp %in% "1" ~ "A + 50 m du passage piéton",
      locp %in% "2" ~ "A – 50 m du passage piéton",
      locp %in% "3" ~ "Sans signalisation lumineuse",
      locp %in% "4" ~ "Avec signalisation lumineuse",
      locp %in% "5" ~ "Sur trottoir",
      locp %in% "6" ~ "Sur accotement",
      locp %in% "7" ~ "Sur refuge ou BAU",
      locp %in% "8" ~ "Sur contre allée",
      TRUE ~ NA_character_
    ),
    actp1 = case_when(
      actp %in% as.character(0:2) ~ "Se déplaçant",
      actp %in% as.character(3:9) ~ "Divers",
      TRUE ~ NA_character_
    ),
    actp2 = case_when(
      actp %in% "0" ~ "non renseigné ou sans objet",
      actp %in% "1" ~ "Sens véhicule heurtant",
      actp %in% "2" ~ "Sens inverse du véhicule",
      actp %in% "3" ~ "Traversant",
      actp %in% "4" ~ "Masqué",
      actp %in% "5" ~ "Jouant – courant",
      actp %in% "6" ~ "Avec animal",
      actp %in% "9" ~ "Autre",
      TRUE ~ NA_character_
    ),
    id_vehicule = gsub(pattern = "[[:space:]]⁠", replacement = "", id_vehicule),
    etatp = case_when(
      etatp %in% "1" ~ "Seul",
      etatp %in% "2" ~ "Accompagné",
      etatp %in% "3" ~ "En groupe",
      TRUE ~ NA_character_
    )
  ) %>%
  select(-c(locp, actp))

usethis::use_data(usager, overwrite = TRUE, compress = "bzip2", ascii = FALSE)
ngsanogo/corpoaccident documentation built on Oct. 20, 2023, 2:27 a.m.