Parsing cepat dengan fasttime
Paket fasttime menyediakan satu fungsi fastPOSIXct(), yang dirancang untuk membaca datetime yang diformat sesuai ISO 8601. Karena hanya membaca satu format dan tidak perlu menebak format, fungsinya sangat cepat!
Anda akan melihat seberapa cepat dalam latihan ini dengan membandingkan kecepatan membaca tanggal dari data cuaca per jam Auckland (lebih dari 17.000 tanggal) dengan ymd_hms() dari lubridate.
Untuk membandingkan waktu eksekusi, Anda akan menggunakan fungsi microbenchmark() dari paket dengan nama yang sama. Anda dapat meneruskan sebanyak mungkin argumen, masing-masing berupa ekspresi yang akan diukur waktunya.
Latihan ini adalah bagian dari kursus
Bekerja dengan Tanggal dan Waktu di R
Petunjuk latihan
Kami telah memuat datetime dari data per jam Auckland sebagai string ke dalam vektor dates.
- Periksa struktur
datesuntuk memastikan bahwa isinya berupa string dan dalam format ISO 8601. - Parse
datesdenganfasttimedan teruskan kestr()untuk memastikanfastPOSIXctmem-parse dengan benar. - Sekarang untuk membandingkan waktu, panggil
microbenchmarkdi mana argumen pertama menggunakanymd_hms()untuk mem-parsedatesdan argumen kedua menggunakanfastPOSIXct().
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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)