LoslegenKostenlos loslegen

Schnelles Parsen mit fasttime

Das Paket fasttime stellt mit fastPOSIXct() eine einzelne Funktion bereit, die Datetimes im ISO-8601-Format einliest. Da es nur ein Format liest und keines raten muss, ist es wirklich schnell!

In dieser Übung siehst du, wie schnell es ist, indem du vergleichst, wie schnell es die Daten der stündlichen Wetterdaten aus Auckland (über 17.000 Datumsangaben) im Vergleich zu lubridates ymd_hms() einliest.

Um Laufzeiten zu vergleichen, verwendest du die Funktion microbenchmark() aus dem gleichnamigen Paket. Du übergibst beliebig viele Argumente, jeweils ein Ausdruck, dessen Laufzeit gemessen werden soll.

Diese Übung ist Teil des Kurses

Arbeiten mit Datums- und Zeitangaben in R

Kurs anzeigen

Anleitung zur Übung

Wir haben die Datetimes aus den stündlichen Auckland-Daten als Strings in den Vektor dates geladen.

  • Untersuche die Struktur von dates, um zu überprüfen, dass es ein String ist und im ISO-8601-Format vorliegt.
  • Parse dates mit fasttime und pipe zu str(), um zu prüfen, dass fastPOSIXct sie korrekt parst.
  • Rufe nun zum Zeitvergleich microbenchmark auf: Das erste Argument nutzt ymd_hms() zum Parsen von dates, das zweite fastPOSIXct().

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

library(microbenchmark)
library(fasttime)

# Examine structure of dates
str(___)

# Use fastPOSIXct() to parse dates
fastPOSIXct(___) %>% str()

# Compare speed of fastPOSIXct() to ymd_hms()
microbenchmark(
  ymd_hms = ___(dates),
  fasttime = ___(dates),
  times = 20)
Code bearbeiten und ausführen