library(tidyverse) l = list(begin = c(0,3,6, 10,11,15,48,73,74,81, 103, 108, 109, 112), end = c(3,6,10,11,15,41,49,74,81,88, 108, 109, 110, 120), col_names = c('dep','c3','code_rivoli','cle_rivoli','code_nature_voie','libelle_voie','voie_privee', 'car_annul','date_annul','date_creation','code_majic','code_type_voie','caractere','mot_directeur')) fantoir = read_fwf(file = "C:/.../datasets/FANTOIR0423", l) %>% filter(!is.na(code_type_voie)) %>% mutate(com = str_c(str_sub(dep,1,2), c3), .before = 1) %>% mutate(dep = if_else(str_sub(dep,1,2) == '97', str_sub(dep,1,3), str_sub(dep,1,2))) %>% select(-c3) library(arrow) write_parquet(fantoir %>% mutate(across(c(dep,com,code_type_voie, code_nature_voie, car_annul), as.factor)), "C:/.../datasets/fantoir202304.parquet")