Как использовать difftime в R для расчета разницы во времени


Вы можете использовать функцию difftime() для вычисления разницы во времени между двумя датами или датами и временем в R.

Эта функция использует следующий базовый синтаксис:

difftime(time1, time2, units=" days ")

куда:

  • time1, time2 : две даты или дата и время
  • Units : Единицы , используемые для разницы во времени (по умолчанию «дни», но другие варианты включают «секунды», «минуты», «часы» и «недели»)

В следующих примерах показано, как использовать функцию difftime() в различных сценариях.

Пример 1. Использование difftime() для вычисления разницы во времени в различных единицах измерения

В следующем коде показано, как использовать функцию difftime() для вычисления разницы во времени между двумя датами и временем с использованием различных единиц измерения:

#define two datetimes
first <- "2022-08-20 08:15:22"
second <- "2022-01-01 20:04:48"

#calculate time difference in days
difftime(first, second)

Time difference of 230.5073 days

#calculate time difference in seconds
difftime(first, second, units=" secs ")

Time difference of 19915834 secs

#calculate time difference in minutes
difftime(first, second, units=" mins ")

Time difference of 331930.6 mins

#calculate time difference in hours
difftime(first, second, units=" hours ")

Time difference of 5532.176 hours

#calculate time difference in weeks
difftime(first, second, units=" weeks ")

Time difference of 32.92962 weeks

Используя аргумент единиц измерения , мы можем вычислить разницу во времени между двумя датами и временем в разных единицах измерения.

Пример 2. Расчет разницы во времени в формате ЧЧ:ММ:СС

Мы также можем использовать функцию as_hms() из библиотеки hms для вычисления разницы во времени между двумя датами и временем в формате ЧЧ:ММ:СС.

library (hms)

#define two datetimes
first <- "2022-01-01 20:15:22"
second <- "2022-01-01 08:04:48"

#calculate difference between datetimes in hours, minutes, seconds
as_hms(difftime(first, second))

12:10:34

Выходные данные показывают разницу во времени между двумя значениями даты и времени в формате часов, минут и секунд.

В этом сценарии разница между двумя значениями времени составляет 12 часов, 10 минут и 34 секунды.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как преобразовать временную метку UNIX в дату в R
Как преобразовать символ в метку времени в R
Как извлечь год из даты в R
Как отсортировать фрейм данных по дате в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.