Cara mengonversi string ke tanggal di r (dengan contoh)
Seringkali saat Anda mengimpor data tanggal dan waktu ke R, nilainya akan diimpor sebagai string.
Cara termudah untuk mengonversi string menjadi tanggal di R adalah dengan menggunakan fungsi as.Date() , yang menggunakan sintaks berikut:
suka.Tanggal(x, format)
Emas:
- x: Nilai string tunggal atau vektor nilai string.
- format: Format yang digunakan untuk tanggal. Standarnya adalah YYYY-MM-DD.
Anda dapat menggunakan perintah ?strftime di R untuk menampilkan daftar lengkap argumen yang tersedia untuk digunakan untuk format tanggal, namun yang paling umum meliputi:
- %d: Hari dalam sebulan sebagai angka desimal (01-31)
- %m: Bulan sebagai angka desimal (01-12)
- %y: Tahun tanpa abad (misalnya 04)
- %Y: Tahun demi abad (misalnya 2004)
Tutorial ini menunjukkan beberapa contoh penggunaan praktis fungsi as.Date() .
Contoh 1: Ubah String Tunggal menjadi Tanggal
Kode berikut menunjukkan cara mengonversi nilai string tunggal menjadi tanggal:
#create string value x <- c(" 2021-07-24 ") #convert string to date new <- as.Date(x, format=" %Y-%m-%d ") new [1] "2021-07-24" #check class of new variable class(new) [1] “Date”
Contoh 2: Ubah vektor string menjadi tanggal
Kode berikut menunjukkan cara mengonversi vektor string menjadi tanggal:
#create vector of strings x <- c(" 2021-07-24 ", " 2021-07-26 ", " 2021-07-30 ") #convert string to date new <- as.Date(x, format=" %Y-%m-%d ") new [1] "2021-07-24" "2021-07-26" "2021-07-30" #check class of new variable class(new) [1] “Date”
Contoh 3: Ubah Kolom Bingkai Data menjadi Tanggal
Kode berikut menunjukkan cara mengonversi kolom data blockchain menjadi tanggal:
#create data frame df <- data.frame(day = c(" 2021-07-24 ", " 2021-07-26 ", " 2021-07-30 "), sales=c(22, 25, 28), products=c(3, 6, 7)) #view structure of data frame str(df) 'data.frame': 3 obs. of 3 variables: $ day: Factor w/ 3 levels "2021-07-24","2021-07-26",..: 1 2 3 $ sales: num 22 25 28 $products: num 3 6 7 #convert day variable to date df$day <- as.Date(df$day, format=" %Y-%m-%d ") #view structure of new data frame str(df) 'data.frame': 3 obs. of 3 variables: $day: Date, format: "2021-07-24" "2021-07-26" ... $ sales: num 22 25 28 $products: num 3 6 7
Contoh 4: Ubah Beberapa Kolom Bingkai Tanggal menjadi Tanggal
Kode berikut menunjukkan cara mengonversi beberapa kolom data blockchain menjadi tanggal:
#create data frame df <- data.frame(start = c(" 2021-07-24 ", " 2021-07-26 ", " 2021-07-30 "), end = c(" 2021-07-25 ", " 2021-07-28 ", " 2021-08-02 "), products=c(3, 6, 7)) #view structure of data frame str(df) 'data.frame': 3 obs. of 3 variables: $ start: Factor w/ 3 levels "2021-07-24","2021-07-26",..: 1 2 3 $ end: Factor w/ 3 levels "2021-07-25","2021-07-28",..: 1 2 3 $products: num 3 6 7 #convert start and end variables to date df[,c(' start ', ' end ')] = lapply (df[,c(' start ', ' end ')], function(x) as.Date(x, format=" %Y-%m-%d ")) #view structure of new data frame str(df) 'data.frame': 3 obs. of 3 variables: $start: Date, format: "2021-07-24" "2021-07-26" ... $end: Date, format: "2021-07-25" "2021-07-28" ... $products: num 3 6 7
Anda dapat mempelajari lebih lanjut tentang fungsi lapply() yang digunakan dalam contoh ini di sini .
Sumber daya tambahan
Tutorial berikut menawarkan informasi tambahan tentang cara bekerja dengan tanggal di R:
Panduan Lengkap Format Tanggal di R
Cara mengurutkan kerangka data berdasarkan tanggal di R
Cara mengekstrak tahun dari tanggal di R