Cara mengurutkan bingkai data berdasarkan tanggal di r (dengan contoh)


Ada dua cara sederhana untuk mengurutkan bingkai data berdasarkan tanggal di R:

Metode 1: perintah pengguna () dari basis R

 #sort from least recent to most recent
df[ order ( as.Date (df$date, format=" %m/%d/%Y ")),]

#sort from most recent to least recent
df[ rev ( order ( as.Date (df$date, format=" %m/%d/%Y "))),]

Metode 2: gunakan fungsi paket lubridate dan dplyr

 library (lubridate)
library (dplyr)

#sort from least recent to most recent 
df %>% arrange ( mdy (df$date))

#sort from most recent to least recent
df %>% arrange ( desc ( mdy (df$date)))

Tutorial ini menunjukkan contoh bagaimana menggunakan masing-masing metode ini dalam praktik.

Metode 1: gunakan order() dari basis R

Cara paling sederhana untuk mengurutkan bingkai data berdasarkan variabel tanggal di R adalah dengan menggunakan fungsi R base order() . Kode berikut menunjukkan cara menggunakan fungsi ini dalam praktiknya:

 #create and view data frame
df <- data.frame(date=c('10/30/2021', '11/18/2021', '11/13/2021', '11/19/2021'),
                 sales=c(3, 15, 14, 9))
df

        dirty dates
1 10/30/2021 3
2 11/18/2021 15
3 11/13/2021 14
4 11/19/2021 9

#sort from least recent to most recent
df[ order ( as.Date (df$date, format=" %m/%d/%Y ")),]

        dirty dates
1 10/30/2021 3
3 11/13/2021 14
2 11/18/2021 15
4 11/19/2021 9
#sort from most recent to least recent
df[ rev ( order ( as.Date (df$date, format=" %m/%d/%Y "))),]

        dirty date
4 11/19/2021 9
2 11/18/2021 15
3 11/13/2021 14
1 10/30/2021 3

Metode 2: Gunakan Lubridasi dan Dplyr

Cara yang lebih cepat untuk mengurutkan bingkai data berdasarkan variabel tanggal adalah dengan menggunakan fungsi dalam paket lubridate dan dplyr. Kode berikut menunjukkan cara menggunakan fungsi-fungsi ini dalam praktik:

 #create and view data frame
df <- data.frame(date=c('10/30/2021', '11/18/2021', '11/13/2021', '11/19/2021'),
                 sales=c(3, 15, 14, 9))
df

        dirty date
1 10/30/2021 3
2 11/18/2021 15
3 11/13/2021 14
4 11/19/2021 9

#sort from least recent to most recent
df %>% arrange ( mdy (df$date))

        dirty date
1 10/30/2021 3
2 11/13/2021 14
3 11/18/2021 15
4 11/19/2021 9

#sort from most recent to least recent
df %>% arrange ( desc ( mdy (df$date)))

        dirty date
1 11/19/2021 9
2 11/18/2021 15
3 11/13/2021 14
4 10/30/2021 3

Perhatikan bahwa kami menggunakan lubridate untuk menentukan tanggal dalam format mdy() , tetapi Anda dapat merujuk ke lembar contekan ini untuk melihat format tanggal lain jika format tanggal Anda berbeda.

Sumber daya tambahan

Cara mengekstrak tahun dari tanggal di R
Cara menggabungkan data harian menjadi data bulanan dan tahunan di R
Cara menyusun garis di R

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *