top of page

IMPORTATIONS ET EXPORTATIONS

DE FICHIERS

Tout d’abord, il faut aller dans la rubrique Files de RStudio (fenêtre située en bas à droite) et vérifier que votre fichier est bien dans le même dossier que votre programme / projet RStudio.

Pour obtenir le chemin de votre répertoire de travail, il faut utiliser la fonction getwd().

getwd() # Pour obtenir le chemin du répertoire de travail.

Puis, si vous n'êtes pas dans le bon répertoire, vous pouvez changer le répertoire de travail avec la fonction setwd.

setwd("chemin de votre répertoire")

Vous pouvez aussi le faire en allant dans l'onglet Files puis dans le répertoire de votre fichier vous cliquez sur "Set As Working Directory" dans l'onglet More.

 

Il faut ensuite visualiser le fichier afin de voir ses caractéristiques. On peut lire un fichier soit en double cliquant dessus soit en utilisant la fonction readLines( ). Pour les fichiers volumineux, il est conseillé de lire juste le début du fichier.

 

readLines("fichier.txt") # Lit le fichier nommée fichier.txt en entier.

readLines("fichier.txt", n=20) # Lit les 20 premières lignes du fichier nommée fichier.txt.

 

 

​Pour importer des données contenues dans un fichier, on utilise la fonction read.table( ).

Les 4 paramètres les plus importants de cette fonction sont : files (nom du fichier), sep (séparateur de données), dec (symbole servant de décimale) et header (si la première ligne correspond aux noms des variables : header=TRUE).

 

Fichier=read.table(file="fichier.txt", sep=" ", dec=".", header=TRUE) # Les données sont séparées par un espace, la décimale est symbolisée par le point . On met le résultat de cette importation dans un objet nommé Fichier.

 

À savoir : l’objet contenant l’importation d’un fichier sera de classe data.frame.

Si le séparateur de données est la tabulation, il faut faire sep="\t".

Il faut utiliser read.csv à la place de read.table pour les fichiers csv.

 

On peut aussi utiliser le paramètre skip pour sauter (ne pas lire) les première lignes d'un fichier.

Fichier=read.table(file="fichier.txt", sep="\t", dec=",", header=F, skip = 3) # Saute les 3 premières lignes du fichier (pour lire à partir de la 4ème ligne).

Ensuite, pour visualiser les premières lignes d’un fichier importer dans un objet, on peut utiliser la fonction head( ). Et pour visualiser les dernières lignes d’un fichier importer dans un objet, on utiliser la fonction tail( ).

 

head(Fichier, n=10) # Lit les 10 premières lignes de l’objet Fichier.

tail(Fichier, n=10) # Lit les 10 dernières lignes de l’objet Fichier.

 


À savoir : faire référence à une variable d'un objet data.frame / fichier :

- Si sur la première ligne du fichier, il n'y a pas le nom des variables (on fait header=FALSE) ou si vous ne les avez pas recodé : les variables seront nommées automatiquement V1, V2, ..., Vn. Pour faire référence à une variable, il faudra donc écrire NomObjet$Vnumérocolonne.

- Si sur la première ligne du fichier, il y a le nom des variables (on fait header=TRUE) ou si vous les avez recodé : il faudra donc écrire NomObjet$NomVariable.

Il est souvent utile de recoder des données, pour cela il faut utiliser les fonction levels et labels.

- Soit on veut ajouter / créer une colonne (une variable) qui contiendra les données recodées :

NouvelleVariable = factor(VariableÀRecoder, levels = c(ValeursFichier), labels = c(Recodage))

Exemple :

Fichier1$V5 = factor(Fichier1$V4, levels = c("h","f"), labels = c("Homme","Femme")) # h est recodé en Homme et f est recodé en Femme. On crée la variable V5 qui correspond aux valeurs recodées de la variable V4.

- Soit on veut modifier une colonne (une variable) en recodant les données :

VariableÀRecoder = factor(VariableÀRecoder, levels = c(ValeursFichier), labels = c(Recodage))

Exemple :

Fichier1$V5 = factor(Fichier1$V4, levels = c(1,2), labels = c("Homme","Femme")) # 1 est recodé en Homme et 2 est recodé en Femme. On crée recode la variable V4.

Attention, vous devez garder le même ordre entre levels et labels.

Pour supprimer une colonne d’un objet (contenant l’importation d’un fichier par exemple), on utilise la fonction transform( ).

 

Fichier1=transform(Fichier1,ID=NULL) # Supprime la colonne ID de l'objet nommé Fichier1.

 

 

Enfin, il peut être utile de savoir comment enregistrer / sauvegarder un objet (data.frame par exemple) dans un fichier. Pour cela, on utilise la fonction write.table( ).

Cette fonction admet plusieurs paramètres comme file (nom du fichier qui va être créé), sep (séparateur de données), quote (si on utilise ou non un encadrement textuelle, comme des guillemets par exemple), et row.names et col.names (si on garde ou non le nom de lignes et colonnes).

 

write.table(Fichier1,file="fichier1_sauvegarde.txt", sep=";",quote=FALSE, row.names=FALSE, col.names=TRUE) # Sauvegarde l’objet data.frame nommé Fichier1 dans un fichier qui s’appellera fichier1_sauvegarde.txt.

​Enfin, il peut aussi être utile d’importer une feuille de données d’un fichier Excel.

On pourrait par exemple convertir la feuille de données du fichier Excel en format csv puis l’importer avec la fonction read.table( ). Cependant, cette méthode n’est pas la plus adaptée.

 

En effet, il existe une fonction, présente dans la librairie readxl qui permet d’importer des données présentes dans une feuille d’un fichier Excel.

Pour installer la librairie readxl, il faut aller dans l’onglet Packages (fenêtre en bas à droite), cliquer sur Install, indiquer le nom de la librairie à installer et enfin cliquer sur Install.

 

Une fois la librairie installée, il faut l’importer avant la fonction librairy( ).

 

library(readxl)

 

 

Pour importer la feuille de données du fichier Excel, on utilise la fonction read_excel( ). Cette fonction admet 3 paramètres : path (nom du fichier excel), sheet (nom de la feuille) et col_names (pour garder le nom des colonnes : col_names=TRUE).

 

Feuille_Excel=read_excel(path="fichier.xlsx", sheet="feuille_3", col_names=TRUE) # Importe dans l’objet Feuille_Excel la feuille nommée feuille₃ du fichier Excel nommé fichier.xlsx.

bottom of page