Aan de slagGa gratis aan de slag

Datetimes werken ook prettig

Net als met Date-objecten kun je ook met POSIXct-objecten plotten en rekenen.

Als voorbeeld zie je in deze oefening hoe snel mensen nieuwe versies van R downloaden, door de downloadlogs van de RStudio CRAN-mirror te bekijken.

R 3.2.0 is uitgebracht op "2015-04-16 07:13:33", dus cran-logs_2015-04-17.csv bevat een willekeurige steekproef van downloads op de 16e, 17e en 18e.

Deze oefening maakt deel uit van de cursus

Werken met datums en tijden in R

Cursus bekijken

Oefeninstructies

  • Gebruik read_csv() om cran-logs_2015-04-17.csv te importeren.
  • Print logs om te zien welke informatie we over elke download hebben.
  • Sla het uitgiftemoment van R 3.2.0 op als een POSIXct-object.
  • Zoek uit wanneer het eerste verzoek voor 3.2.0 is gedaan door te filteren op waarden in de kolom datetime die groter zijn dan release_time.
  • Bekijk ten slotte hoe downloads toenemen door histogrammen te maken van de downloadtijd voor 3.2.0 en de vorige versie 3.1.3. We hebben het meeste van de code al gegeven; je hoeft alleen de x-esthetiek in te stellen op de kolom datetime.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Import "cran-logs_2015-04-17.csv" with read_csv()
logs <- read_csv(___)

# Print logs
___

# Store the release time as a POSIXct object
release_time <- ___("2015-04-16 07:13:33", tz = "UTC")

# When is the first download of 3.2.0?
logs %>% 
  filter(___,
    r_version == "3.2.0")

# Examine histograms of downloads by version
ggplot(logs, aes(x = ___)) +
  geom_histogram() +
  geom_vline(aes(xintercept = as.numeric(release_time)))+
  facet_wrap(~ r_version, ncol = 1)
Code bewerken en uitvoeren