Як перетворити дату на числову в r (з прикладами)


Існує два методи, які можна використовувати для перетворення значень дати в числові значення в R:

Спосіб 1: Використовуйте as.numeric()

 as. numeric (my_date)

Це поверне кількість секунд, що минуло між вашим об’єктом дати та 1/1/1970.

Спосіб 2. Використовуйте функції пакета змащення

 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)

Це поверне значення секунд, хвилин, років тощо. вашого об’єкта дати.

Наступні приклади показують, як використовувати кожен метод на практиці.

Спосіб 1: Використовуйте as.numeric()

У наступному коді показано, як перетворити об’єкт дати на числовий за допомогою функції 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

За результатами ми бачимо:

  • Існує різниця в 1 634 189 700 секунд між нашим об’єктом дати та 1/1/1970.
  • Існує різниця в 18 914,23 днів між нашим об’єктом дати та 1/1/1970.
  • Існує різниця в 51,81982 року між нашим об’єктом дати та 1/1/1970.

Спосіб 2. Використовуйте функції пакета змащення

Наступний код показує, як перетворити об’єкт дати на числовий за допомогою функцій у пакеті lubridate у 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

Використовуючи ці функції, ми можемо витягувати значення секунд, хвилин, годин, днів, місяців і років з нашого об’єкта дати.

Перегляньте цю онлайн-шпаргалку, щоб отримати повне розуміння найпоширеніших функцій у пакеті Lubridate.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові перетворення в R:

Як перетворити рядок на Datetime у R
Як перетворити числа на дати в R
Як відсортувати кадр даних за датою в R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *