Cara mengekstrak tahun dari tanggal di r (dengan contoh)
Ada dua cara untuk mengekstrak tahun dengan cepat dari suatu tanggal di R:
Metode 1: Gunakan format()
df$year <- format( as.Date (df$date, format=" %d/%m/%Y ")," %Y ")
Metode 2: Gunakan paket pelumasan
library (lubridate) df$year <- year( mdy (df$date))
Tutorial ini menunjukkan contoh bagaimana menggunakan masing-masing metode ini dalam praktik.
Metode 1: Ekstrak tahun dari tanggal menggunakan format()
Kode berikut menunjukkan cara mengekstrak tahun dari tanggal menggunakan fungsi format() yang digabungkan dengan argumen “%Y” :
#create data frame df <- data.frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"), sales=c(34, 36, 44)) #view data frame df dirty dates 1 01/01/2021 34 2 01/04/2021 36 3 01/09/2021 44 #create new variable that contains year df$year <- format( as.Date (df$date, format=" %d/%m/%Y ")," %Y ") #view new data frame df date sales year 1 01/01/2021 34 2021 2 01/04/2021 36 2021 3 01/09/2021 44 2021
Perhatikan bahwa fungsi format() ini berfungsi dengan berbagai format tanggal. Anda hanya perlu menentukan formatnya:
#create data frame df <- data.frame(date=c("2021-01-01", "2021-01-04", "2021-01-09"), sales=c(34, 36, 44)) #view data frame df dirty date 1 2021-01-01 34 2 2021-01-04 36 3 2021-01-09 44 #create new variable that contains year df$year <- format( as.Date (df$date, format=" %Y-%m-%d ")," %Y ") #view new data frame df date sales year 1 01/01/2021 34 2021 2 01/04/2021 36 2021 3 01/09/2021 44 2021
Metode 2: Ekstrak tahun dari tanggal menggunakan Lubridate
Kita juga dapat menggunakan fungsi dalam paket lubridate untuk mengekstrak tahun dari tanggal dengan cepat:
library (lubridate) #create data frame df <- data.frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"), sales=c(34, 36, 44)) #view data frame df dirty dates 1 01/01/2021 34 2 01/04/2021 36 3 01/09/2021 44 #create new variable that contains year df$year <- year( mdy (df$date)) #view new data frame df date sales year 1 01/01/2021 34 2021 2 01/04/2021 36 2021 3 01/09/2021 44 2021
Lubridate juga berfungsi dengan berbagai format tanggal. Anda hanya perlu menentukan formatnya:
#create data frame df <- data.frame(date=c("2021-01-01", "2021-01-04", "2021-01-09"), sales=c(34, 36, 44)) #view data frame df dirty dates 1 2021-01-01 34 2 2021-01-04 36 3 2021-01-09 44 #create new variable that contains year df$year <- year( ymd (df$date)) #view new data frame df date sales year 1 01/01/2021 34 2021 2 01/04/2021 36 2021 3 01/09/2021 44 2021
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di R:
Cara mengulangi nama kolom di R
Cara menghapus outlier dari beberapa kolom di R