Jak posortować ramkę danych według daty w r (z przykładami)
Istnieją dwa proste sposoby sortowania ramki danych według daty w R:
Metoda 1: polecenie użytkownika () z bazy 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 "))),]
Metoda 2: użyj funkcji pakietów lubridate i 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)))
W tym samouczku przedstawiono przykład wykorzystania każdej z tych metod w praktyce.
Metoda 1: użyj funkcji Order() z bazy R
Najprostszym sposobem sortowania ramki danych według zmiennej daty w R jest użycie funkcji podstawowej kolejności() . Poniższy kod pokazuje, jak w praktyce wykorzystać tę funkcję:
#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
Metoda 2: Użyj Lubridate i Dplyr
Szybszym sposobem sortowania ramki danych według zmiennej daty jest użycie funkcji z pakietów lubridate i dplyr. Poniższy kod pokazuje, jak w praktyce wykorzystać te funkcje:
#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
Pamiętaj, że użyliśmy lubridate do określenia daty w formacie mdy() , ale możesz skorzystać z tej ściągawki , aby zobaczyć inne formaty daty, jeśli Twoja data jest w innym formacie.
Dodatkowe zasoby
Jak wyodrębnić rok z daty w R
Jak agregować dane dzienne na dane miesięczne i roczne w R
Jak ułożyć linie w R