CommencerCommencer gratuitement

Comparer les temps de lecture des fichiers CSV et RDS

L’une des tâches les plus courantes consiste à lire des données depuis des fichiers CSV. Cependant, pour de gros CSV, cela peut être lent. Une astuce consiste à lire les données puis à les enregistrer en fichier binaire R (rds) avec saveRDS(). Pour relire le fichier rds, on utilise readRDS().

Remarque : comme rds est le format natif de R pour stocker des objets uniques, vous n’introduisez aucune dépendance tierce susceptible d’évoluer à l’avenir.

Pour comparer les deux approches, vous pouvez utiliser system.time(). Cette fonction renvoie le temps nécessaire pour évaluer n’importe quelle expression R. Par exemple, pour mesurer le temps de calcul de la racine carrée des nombres de un à dix millions, vous écririez :

system.time(sqrt(1:1e7))

Cet exercice fait partie du cours

Écrire du code R efficace

Afficher le cours

Instructions

Les fichiers "movies.csv" et "movies.rds" contiennent tous deux des data frames identiques avec des informations sur 45 000 films.

  • À l’aide de la fonction system.time(), combien de temps faut-il pour lire le fichier CSV avec read.csv("movies.csv") ?
  • Répétez l’opération pour le fichier rds, "movies.rds", en utilisant readRDS().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# How long does it take to read movies from CSV?
system.time(read.csv(___))

# How long does it take to read movies from RDS?
___
Modifier et exécuter le code