MulaiMulai sekarang secara gratis

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

Lihat Kursus

Petunjuk latihan

Kami telah memuat datetime dari data per jam Auckland sebagai string ke dalam vektor dates.

  • Periksa struktur dates untuk memastikan bahwa isinya berupa string dan dalam format ISO 8601.
  • Parse dates dengan fasttime dan teruskan ke str() untuk memastikan fastPOSIXct mem-parse dengan benar.
  • Sekarang untuk membandingkan waktu, panggil microbenchmark di mana argumen pertama menggunakan ymd_hms() untuk mem-parse dates dan argumen kedua menggunakan fastPOSIXct().

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)
Edit dan Jalankan Kode