Tworzenie i formatowanie dat
Aby w R utworzyć obiekt Date z prostego ciągu znaków, możesz użyć funkcji as.Date(). Ciąg znaków musi być zgodny z formatem, który definiuje się za pomocą określonych symboli (poniższe przykłady odpowiadają dacie 13 stycznia 1982):
%Y: rok czterocyfrowy (1982)%y: rok dwucyfrowy (82)%m: miesiąc dwucyfrowy (01)%d: dzień miesiąca dwucyfrowy (13)%A: dzień tygodnia (Wednesday)%a: skrócony dzień tygodnia (Wed)%B: miesiąc (January)%b: skrócony miesiąc (Jan)
Poniższe polecenia R tworzą ten sam obiekt Date dla 13. dnia stycznia 1982 roku:
as.Date("1982-01-13")
as.Date("Jan-13-82", format = "%b-%d-%y")
as.Date("13 January, 1982", format = "%d %B, %Y")
Zwróć uwagę, że pierwszy przykład nie wymaga argumentu format – R domyślnie dopasowuje ciąg znaków do formatów "%Y-%m-%d" lub "%Y/%m/%d".
Poza tworzeniem dat możesz też konwertować daty na ciągi znaków w innej notacji. Służy do tego funkcja format(). Wypróbuj poniższy kod:
today <- Sys.Date()
format(Sys.Date(), format = "%d %B, %Y")
format(Sys.Date(), format = "Today is a %A!")
To ćwiczenie jest częścią kursu
Intermediate R
Instrukcje do ćwiczenia
- Przygotowano dla ciebie trzy ciągi znaków reprezentujące daty. Przekonwertuj je na daty za pomocą funkcji
as.Date()i przypisz odpowiednio do zmiennychdate1,date2idate3. Kod dladate1jest już gotowy. - Wyodrębnij przydatne informacje z dat w postaci ciągów znaków, korzystając z funkcji
format(). Z pierwszej daty pobierz dzień tygodnia. Z drugiej daty pobierz dzień miesiąca. Z trzeciej daty pobierz skrócony miesiąc i rok czterocyfrowy, oddzielone spacją.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Definition of character strings representing dates
str1 <- "May 23, '96"
str2 <- "2012-03-15"
str3 <- "30/January/2006"
# Convert the strings to dates: date1, date2, date3
date1 <- as.Date(str1, format = "%b %d, '%y")
# Convert dates to formatted strings
format(date1, "%A")