Dodawanie użytecznych etykiet
W poprzednim ćwiczeniu znajdowałeś/-aś miesiące wydań:
head(month(release_time))
i otrzymywałeś/-aś miesiące jako liczby. Czasem wygodniej – zwłaszcza przy tworzeniu wykresów lub tabel – mieć nazwy miesięcy zamiast cyfr. Zarówno funkcja month(), jak i wday() (dzień tygodnia) mają dodatkowe argumenty label oraz abbr, które właśnie to umożliwiają. Ustaw label = TRUE, aby wynik był oznaczony nazwami miesięcy (lub dni tygodnia), oraz abbr = FALSE, żeby nazwy były wypisane w pełnym brzmieniu, a nie w formie skróconej.
Na przykład uruchom:
head(month(release_time, label = TRUE, abbr = FALSE))
Przećwicz to, analizując popularne dni tygodnia dla wydań R.
To ćwiczenie jest częścią kursu
Praca z datami i czasem w R
Instrukcje do ćwiczenia
releases to teraz ramka danych z kolumną datetime zawierającą czas wydania.
- Najpierw sprawdź, co robi
wday()bez etykietowania – wywołaj tę funkcję na kolumniedatetimez ramkireleasesi zestawuj wyniki w tabeli. Czy wiesz, czy1oznacza niedzielę, czy poniedziałek? - Powtórz powyższe, tym razem używając etykiet poprzez określenie argumentu
label. Lepiej, prawda? - Teraz zapisz etykietowane dni tygodnia w nowej kolumnie o nazwie
wday. - Utwórz wykres słupkowy wydań według dnia tygodnia, podzielony na panele według typu wydania.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
library(ggplot2)
# Use wday() to tabulate release by day of the week
___(releases$datetime) %>% table()
# Add label = TRUE to make table more readable
___(releases$datetime, ___) %>% table()
# Create column wday to hold labelled week days
releases$wday <- ___
# Plot barchart of weekday by type of release
ggplot(releases, aes(___)) +
geom_bar() +
facet_wrap(~ type, ncol = 1, scale = "free_y")