Programmer en R/Importer un fichier texte à largeur fixe

Wikipédia propose un article sur : « Fichier texte à largeur fixe ».

Exemple

modifier

 

Wikipédia propose un article sur : « FANTOIR ».

On prend pour exemple le fichier FANTOIR sur data.gouv.fr[1].

$ wget https://www.data.gouv.fr/fr/datasets/r/008e7b8f-f52c-4dc6-89ca-3bed2b103746
$ mv 008e7b8f-f52c-4dc6-89ca-3bed2b103746 fantoir.zip
$ unzip fantoir.zip

Lire le fichier

modifier

On peut le lire facilement avec R et la librairie `readr` : http://readr.tidyverse.org/reference/read_fwf.html

  • La fonction `fwf_empty()` détecte automatiquement la largeur des colonnes
  • La fonction `read_fwf()` permet de lire le fichier.
  • L'option n_max permet de ne lire que les 1000 premières lignes. C'est utile pour faire des tests.


library(readr)
table_fantoir <- read_fwf(file="FANTOIR1017", fwf_empty("FANTOIR1017"), n_max = 100)

Pour avoir un aperçu des données, on peut utiliser la fonction `glimpse()` de `dplyr`

library(dplyr)
table_fantoir %>% glimpse()

Notes et références

modifier