Membuat dan memformat tanggal
Untuk membuat objek Date dari string karakter sederhana di R, Anda dapat menggunakan fungsi as.Date(). String karakter harus mengikuti format yang dapat ditentukan menggunakan sekumpulan simbol (contoh berikut sesuai dengan 13 Januari 1982):
%Y: tahun 4 digit (1982)%y: tahun 2 digit (82)%m: bulan 2 digit (01)%d: tanggal dalam bulan 2 digit (13)%A: hari dalam sepekan (Wednesday)%a: singkatan hari (Wed)%B: bulan (January)%b: singkatan bulan (Jan)
Perintah R berikut semuanya akan membuat objek Date yang sama untuk tanggal 13 Januari 1982:
as.Date("1982-01-13")
as.Date("Jan-13-82", format = "%b-%d-%y")
as.Date("13 January, 1982", format = "%d %B, %Y")
Perhatikan bahwa baris pertama tidak memerlukan argumen format, karena secara bawaan R mencocokkan string karakter Anda dengan format "%Y-%m-%d" atau "%Y/%m/%d".
Selain membuat tanggal, Anda juga dapat mengonversi tanggal menjadi string karakter yang menggunakan notasi tanggal berbeda. Untuk ini, gunakan fungsi format(). Coba baris kode berikut:
today <- Sys.Date()
format(Sys.Date(), format = "%d %B, %Y")
format(Sys.Date(), format = "Today is a %A!")
Latihan ini adalah bagian dari kursus
R Tingkat Menengah
Petunjuk latihan
- Tiga string karakter yang merepresentasikan tanggal telah dibuat untuk Anda. Konversikan menjadi tanggal menggunakan
as.Date(), dan tetapkan masing-masing kedate1,date2, dandate3. Kode untukdate1sudah disertakan. - Ekstrak informasi berguna dari tanggal sebagai string karakter menggunakan
format(). Dari tanggal pertama, pilih hari dalam sepekan. Dari tanggal kedua, pilih tanggal dalam bulan. Dari tanggal ketiga, pilih singkatan bulan dan tahun 4 digit, dipisahkan dengan spasi.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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")