data-raw/vehicule.R

## code to prepare `vehicule` dataset goes here

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

vehicule <- list.files("./data-raw/raw", pattern = "^vehicules-2", full.names = TRUE) %>%
  map(fread, colClasses = "character", encoding = "Latin-1", na.strings = c("", "NA")) %>%
  bind_rows() %>%
  as_tibble() %>%
  set_names(tolower) %>%
  mutate(
    senc = case_when(
      senc %in% "1" ~ "PK ou PR ou numéro d’adresse postale croissant",
      senc %in% "2" ~ "PK ou PR ou numéro d’adresse postale décroissant",
      TRUE ~ NA_character_
    ),
    catv = case_when(
      catv %in% "01" ~ "Bicyclette",
      catv %in% "02" ~ "Cyclomoteur <50cm3",
      catv %in% "03" ~ "Voiturette (Quadricycle à moteur carrossé) (anciennement \"voiturette ou tricycle à moteur\")",
      catv %in% "04" ~ "Référence plus utilisée depuis 2006 (scooter immatriculé)",
      catv %in% "05" ~ "Référence plus utilisée depuis 2006 (motocyclette)",
      catv %in% "06" ~ "Référence plus utilisée depuis 2006 (side-car)",
      catv %in% "07" ~ "VL seul",
      catv %in% "08" ~ "Catégorie plus utilisée (VL + caravane)",
      catv %in% "09" ~ "Catégorie plus utilisée (VL + remorque)",
      catv %in% "10" ~ "VU seul 1,5T <= PTAC <= 3,5T avec ou sans remorque (anciennement VU seul 1,5T <= PTAC <= 3,5T)",
      catv %in% "11" ~ "Référence plus utilisée depuis 2006 (VU (10) + caravane)",
      catv %in% "12" ~ "Référence plus utilisée depuis 2006 (VU (10) + remorque)",
      catv %in% "13" ~ "PL seul 3,5T <PTCA <= 7,5T",
      catv %in% "14" ~ "PL seul > 7,5T",
      catv %in% "15" ~ "PL > 3,5T + remorque",
      catv %in% "16" ~ "Tracteur routier seul",
      catv %in% "17" ~ "Tracteur routier + semi-remorque",
      catv %in% "18" ~ "Référence plus utilisée depuis 2006 (transport en commun)",
      catv %in% "19" ~ "Référence plus utilisée depuis 2006 (tramway)",
      catv %in% "20" ~ "Engin spécial",
      catv %in% "21" ~ "Tracteur agricole",
      catv %in% "30" ~ "Scooter < 50 cm3",
      catv %in% "31" ~ "Motocyclette > 50 cm3 et <= 125 cm3",
      catv %in% "32" ~ "Scooter > 50 cm3 et <= 125 cm3",
      catv %in% "33" ~ "Motocyclette > 125 cm3",
      catv %in% "34" ~ "Scooter > 125 cm3",
      catv %in% "35" ~ "Quad léger <= 50 cm3 (Quadricycle à moteur non carrossé)",
      catv %in% "36" ~ "Quad lourd > 50 cm3 (Quadricycle à moteur non carrossé)",
      catv %in% "37" ~ "Autobus",
      catv %in% "38" ~ "Autocar",
      catv %in% "39" ~ "Train",
      catv %in% "40" ~ "Tramway",
      catv %in% "99" ~ "Autre véhicule",
      TRUE ~ NA_character_
    ),
    obs = case_when(
      obs %in% "1" ~ "Véhicule en stationnement",
      obs %in% "2" ~ "Arbre",
      obs %in% "3" ~ "Glissière métallique",
      obs %in% "4" ~ "Glissière béton",
      obs %in% "5" ~ "Autre glissière",
      obs %in% "6" ~ "Bâtiment, mur, pile de pont",
      obs %in% "7" ~ "Support de signalisation verticale ou poste d’appel d’urgence",
      obs %in% "8" ~ "Poteau",
      obs %in% "9" ~ "Mobilier urbain",
      obs %in% "10" ~ "Parapet",
      obs %in% "11" ~ "Ilot, refuge, borne haute",
      obs %in% "12" ~ "Bordure de trottoir",
      obs %in% "13" ~ "Fossé, talus, paroi rocheuse",
      obs %in% "14" ~ "Autre obstacle fixe sur chaussée",
      obs %in% "15" ~ "Autre obstacle fixe sur trottoir ou accotement",
      obs %in% "16" ~ "Sortie de chaussée sans obstacle",
      TRUE ~ NA_character_
    ),
    obsm = case_when(
      obsm %in% "1" ~ "Piéton",
      obsm %in% "2" ~ "Véhicule",
      obsm %in% "4" ~ "Véhicule sur rail",
      obsm %in% "5" ~ "Animal domestique",
      obsm %in% "6" ~ "Animal sauvage",
      obsm %in% "9" ~ "Autre",
      TRUE ~ NA_character_
    ),
    choc = case_when(
      choc %in% "1" ~ "Avant",
      choc %in% "2" ~ "Avant droit",
      choc %in% "3" ~ "Avant gauche",
      choc %in% "4" ~ "Arrière",
      choc %in% "5" ~ "Arrière droit",
      choc %in% "6" ~ "Arrière gauche",
      choc %in% "7" ~ "Côté droit",
      choc %in% "8" ~ "Côté gauche",
      choc %in% "9" ~ "Chocs multiples (tonneaux)",
      TRUE ~ NA_character_
    ),
    manv1 = case_when(
      manv %in% as.character(1:10) ~ "Manœuvre principale avant l’accident",
      manv %in% as.character(11:12) ~ "Changeant de file",
      manv %in% as.character(13:14) ~ "Déporté",
      manv %in% as.character(15:16) ~ "Tournant",
      manv %in% as.character(17:18) ~ "Dépassant",
      manv %in% as.character(19:24) ~ "Divers",
      TRUE ~ NA_character_
    ),
    manv2 = case_when(
      manv %in% "1" ~ "Sans changement de direction",
      manv %in% "2" ~ "Même sens, même file",
      manv %in% "3" ~ "Entre 2 files",
      manv %in% "4" ~ "En marche arrière",
      manv %in% "5" ~ "A contresens",
      manv %in% "6" ~ "En franchissant le terre-plein central",
      manv %in% "7" ~ "Dans le couloir bus, dans le même sens",
      manv %in% "8" ~ "Dans le couloir bus, dans le sens inverse",
      manv %in% "9" ~ "En s’insérant",
      manv %in% "10" ~ "En faisant demi-tour sur la chaussée",
      manv %in% "11" ~ "A gauche",
      manv %in% "12" ~ "A droite",
      manv %in% "13" ~ "A gauche",
      manv %in% "14" ~ "A droite",
      manv %in% "15" ~ "A gauche",
      manv %in% "16" ~ "A droite",
      manv %in% "17" ~ "A gauche",
      manv %in% "18" ~ "A droite",
      manv %in% "19" ~ "Traversant la chaussée",
      manv %in% "20" ~ "Manœuvre de stationnement",
      manv %in% "21" ~ "Manœuvre d’évitement",
      manv %in% "22" ~ "Ouverture de porte",
      manv %in% "23" ~ "Arrêté (hors stationnement)",
      manv %in% "24" ~ "En stationnement (avec occupants)",
      TRUE ~ NA_character_
    ),
    .before = manv
  ) %>%
  select(-manv)

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