Kom igångKom igång gratis

Jämföra inläsningstider för CSV- och RDS-filer

En av de vanligaste uppgifterna vi utför är att läsa in data från CSV-filer. För stora CSV-filer kan det dock gå långsamt. Ett smidigt knep är att läsa in datan och spara den som en binär R-fil (rds) med hjälp av saveRDS(). För att läsa in rds-filen använder du readRDS().

Obs: Eftersom rds är R:s eget format för att lagra enskilda objekt, undviker du beroenden till tredjepartspaket som kan förändras i framtiden.

För att jämföra de två metoderna kan du använda system.time(). Den här funktionen returnerar den tid det tar att evaluera ett R-uttryck. Om du till exempel vill mäta hur lång tid det tar att beräkna kvadratroten ur talen ett till tio miljoner skriver du följande:

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

Den här övningen är en del av kursen

Effektiv R-kod

Visa kurs

Övningsinstruktioner

Filerna "movies.csv" och "movies.rds" innehåller båda identiska dataramar med information om 45 000 filmer.

  • Använd funktionen system.time() för att mäta hur lång tid det tar att läsa in CSV-filen med read.csv("movies.csv").
  • Upprepa samma steg för rds-filen, "movies.rds", med hjälp av readRDS().

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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

# How long does it take to read movies from RDS?
___
Redigera och kör kod