Exporter des data frames et des matrices

Exporter des data frames et des matrices

Créons manuellement un data frame. Il contiendra 3 variables :

## Un vecteur contenant les nombres de 1 à 10
variable1 <- 1:10

## Un vecteur de 10 valeurs générées aléatoirement
variable2 <- rnorm(10)

## Un vecteur de 10 lettres
variable3 <- c("A", "B", "W", "C", "D", "E", "A", "B", "C", "D")

## Combiner tous les vecteurs en un data frame
my_data_frame <- data.frame(variable1, variable2, variable3)

## Afficher notre data frame
my_data_frame
   variable1  variable2 variable3
1          1  0.2236806         A
2          2  0.4051425         B
3          3  0.8862467         W
4          4  0.1505596         C
5          5  0.6452608         D
6          6  0.7148596         E
7          7  0.4315247         A
8          8  1.6137024         B
9          9 -0.3816980         C
10        10  0.2302253         D

Nous créons ensuite une nouvelle variable (variable4), égale au produit de variabel1 et variabel2 :

my_data_frame$variable4 <- my_data_frame$variable1 * my_data_frame$variable2

## Afficher notre data frame
my_data_frame
   variable1  variable2 variable3  variable4
1          1  0.2236806         A  0.2236806
2          2  0.4051425         B  0.8102850
3          3  0.8862467         W  2.6587400
4          4  0.1505596         C  0.6022382
5          5  0.6452608         D  3.2263041
6          6  0.7148596         E  4.2891579
7          7  0.4315247         A  3.0206726
8          8  1.6137024         B 12.9096189
9          9 -0.3816980         C -3.4352823
10        10  0.2302253         D  2.3022534

Nous allons maintenant sauvegarder notre data frame en l'exportant vers un fichier sur le disque dur. Ce fichier doit pouvoir être utilisé par d'autres applications. R propose différentes fonctions pour exporter des data frames et des matrices. Nous recommandons d'utiliser pour ces tâches les fonctions des packages haven et readr. Commencez par charger ces packages :

library(readr)
library(readxl)
library(haven)

Supposons que nous disposions d'un data frame ou d'une matrice nommé(e) mina_data, que nous voulons maintenant exporter de R vers le disque dur. Vous trouverez ci-dessous les commandes permettant d'exporter le fichier vers les formats les plus courants (CSV, TSV, SAS, SPSS, STATA). Nous nommerons le fichier exporté exporterade_data.

## Exporter vers SAS
write_sas(data=mina_data, path='exporterade_data.sas7bdat')

## Exporter vers SAS XPT
write_xpt(data=mina_data, path='exporterade_data.sas7bdat', version = 8, name = NULL)

## Exporter vers STATA
write_dta(data=mina_data, path='exporterade_data.sas7bdat', version = 14)

## Exporter vers SPSS
write_sav(data=mina_data, path='exporterade_data.sas7bdat', compress = FALSE)

## Exporter vers un fichier CSV avec la virgule (,) comme séparateur
write_csv(x=mina_data, file='exporterade_data.csv')

## Exporter vers un fichier CSV avec le point-virgule (;) comme séparateur
write_csv2(x=mina_data, file='exporterade_data.csv')

## Exporter vers un fichier CSV adapté à Excel, avec la virgule (,) comme séparateur
write_excel_csv(x=mina_data, file='exporterade_data.csv')

## Exporter vers un fichier CSV adapté à Excel, avec le point-virgule (;) comme séparateur
write_excel_csv2(x=mina_data, file='exporterade_data.csv')

## Exporter vers un fichier TSV (fichier délimité par des tabulations)
write_tsv(x=mina_data, file='exporterade_data.csv')

Ces fonctions acceptent bien plus d'arguments que ceux présentés dans le code ci-dessus. Par ailleurs, nous n'avons pas présenté la fonction write_delim(), utilisée lorsque vous souhaitez spécifier vous-même le délimiteur (avec l'argument delim). Parmi les arguments les plus importants de ces fonctions figure l'argument na=, qui permet de spécifier le caractère (le cas échéant) servant à indiquer les données manquantes (NA). Par défaut, il vaut NA si vous n'indiquez rien d'autre. Un autre argument important est row.names=, auquel vous pouvez attribuer la valeur TRUE ou FALSE pour indiquer si les noms de lignes du data frame doivent être écrits sous forme de colonne dans le fichier exporté.

Où les fichiers sont-ils enregistrés ?

Dans tous les exemples ci-dessus, les fichiers sont enregistrés dans votre répertoire de travail (working directory), à moins que vous n'indiquiez un chemin complet vers l'emplacement d'exportation du fichier. Voici un exemple dans lequel les fichiers sont exportés vers le bureau plutôt que vers le répertoire de travail :

write_csv(data=mina_data, path='/Users/Adam/Desktop/exporterade_data.csv')