Jak przekonwertować datę na numeryczną w r (z przykładami)
Istnieją dwie metody, których możesz użyć do konwersji wartości dat na wartości liczbowe w R:
Metoda 1: Użyj as.numeric()
as. numeric (my_date)
Spowoduje to zwrócenie liczby sekund, które upłynęły między obiektem daty a datą 1/1/1970.
Metoda 2: Użyj funkcji pakietu lubridate
library (lubridate) #get seconds value in date object second(my_date) #get minutes value in date object minute(my_date) ... #get year value in date object year(my_date)
Spowoduje to zwrócenie wartości sekund, minut, lat itp. Twojego obiektu daty.
Poniższe przykłady pokazują, jak zastosować każdą metodę w praktyce.
Metoda 1: Użyj as.numeric()
Poniższy kod pokazuje, jak przekonwertować obiekt daty na numeryczny za pomocą funkcji as.numeric() :
#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")
#view date object
my_date
[1] "2021-10-14 05:35:00 UTC"
#convert date object to number of seconds since 1/1/1970
as. numeric (my_date)
[1] 1634189700
#convert date object to number of days since 1/1/1970
as. numeric (my_date) / 86400
[1] 18914.23
#convert date object to number of years since 1/1/1970
as. numeric (my_date) / 86400 / 365
[1] 51.81982
Na podstawie wyniku możemy zobaczyć:
- Różnica między naszą datą a datą 1.01.1970 wynosi 1 634 189 700 sekund .
- Między naszą datą a datą 1.01.1970 różnica wynosi 18 914,23 dni .
- Między naszą datą a datą 1.01.1970 jest różnica 51,81982 lat .
Metoda 2: Użyj funkcji pakietu lubridate
Poniższy kod pokazuje, jak przekonwertować obiekt daty na numeryczny przy użyciu funkcji z pakietu lubridate w R:
library (lubridate)
#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")
#view date object
my_date
[1] "2021-10-14 05:35:00 UTC"
#extract various numerical values from date object
second(my_date)
[1] 0
minute(my_date)
[1] 35
hour(my_date)
[1] 5
day(my_date)
[1] 14
month(my_date)
[1] 10
year(my_date)
[1] 2021
Za pomocą tych funkcji możemy wyodrębnić wartości sekund, minut, godzin, dni, miesięcy i lat z naszego obiektu daty.
Zapoznaj się z tą ściągawką online, aby uzyskać pełne zrozumienie najczęściej używanych funkcji pakietu Lubridate.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonać inne typowe konwersje w R:
Jak przekonwertować ciąg na Datetime w R
Jak przekonwertować liczby na daty w R
Jak posortować ramkę danych według daty w R