Creează și formatează date calendaristice
Pentru a crea un obiect de tip Date dintr-un șir de caractere simplu în R, poți folosi funcția as.Date(). Șirul de caractere trebuie să respecte un format care poate fi definit printr-un set de simboluri (exemplele corespund datei de 13 ianuarie 1982):
%Y: an cu 4 cifre (1982)%y: an cu 2 cifre (82)%m: lună cu 2 cifre (01)%d: zi din lună cu 2 cifre (13)%A: ziua săptămânii (Wednesday)%a: ziua săptămânii abreviată (Wed)%B: luna (January)%b: luna abreviată (Jan)
Următoarele comenzi R vor crea același obiect Date pentru ziua de 13 ianuarie 1982:
as.Date("1982-01-13")
as.Date("Jan-13-82", format = "%b-%d-%y")
as.Date("13 January, 1982", format = "%d %B, %Y")
Observă că prima linie nu necesită un argument format, deoarece R potrivește implicit șirul de caractere cu formatele "%Y-%m-%d" sau "%Y/%m/%d".
Pe lângă crearea datelor calendaristice, le poți și converti în șiruri de caractere care folosesc o altă notație. Pentru aceasta, folosești funcția format(). Încearcă următoarele linii de cod:
today <- Sys.Date()
format(Sys.Date(), format = "%d %B, %Y")
format(Sys.Date(), format = "Today is a %A!")
Acest exercițiu face parte din cursul
R intermediar
Instrucțiuni pentru exercițiu
- Trei șiruri de caractere reprezentând date calendaristice au fost deja create pentru tine. Convertește-le la date folosind
as.Date()și atribuie-le respectiv variabilelordate1,date2șidate3. Codul pentrudate1este deja inclus. - Extrage informații utile din date sub formă de șiruri de caractere folosind
format(). Din prima dată, selectează ziua săptămânii. Din a doua dată, selectează ziua din lună. Din a treia dată, selectează luna abreviată și anul cu 4 cifre, separate printr-un spațiu.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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")