Parsare rapidă cu fasttime
Pachetul fasttime oferă o singură funcție, fastPOSIXct(), concepută pentru a citi date și ore formatate conform standardului ISO 8601. Deoarece recunoaște un singur format și nu trebuie să îl ghicească, este extrem de rapidă!
În acest exercițiu vei vedea cât de rapidă este, comparând viteza cu care citește datele din setul de date meteorologice orare din Auckland (peste 17.000 de date) cu funcția ymd_hms() din lubridate.
Pentru a compara timpii de execuție, vei folosi funcția microbenchmark() din pachetul cu același nume. Îi transmiți oricâte argumente dorești, fiecare fiind o expresie de cronometrat.
Acest exercițiu face parte din cursul
Lucrul cu date și ore în R
Instrucțiuni pentru exercițiu
Am încărcat datele calendaristice din setul de date meteorologice orare din Auckland ca șiruri de caractere în vectorul dates.
- Examinează structura lui
datespentru a verifica că este un șir de caractere în format ISO 8601. - Parsează
datescufasttimeși trimite rezultatul prin pipe lastr()pentru a verifica căfastPOSIXctle parsează corect. - Acum, pentru a compara timpii de execuție, apelează
microbenchmarkunde primul argument foloseșteymd_hms()pentru a parsadates, iar al doilea foloseștefastPOSIXct().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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)