Вычисления со временем
Вычисления с объектами POSIXct полностью аналогичны вычислениям с объектами Date. Попробуйте поэкспериментировать с приведённым кодом, чтобы увеличить или уменьшить значения объектов POSIXct:
now <- Sys.time()
now + 3600 # add an hour
now - 3600 * 24 # subtract a day
Сложение и вычитание объектов времени также выполняется просто:
birth <- as.POSIXct("1879-03-14 14:37:23")
death <- as.POSIXct("1955-04-18 03:47:12")
einstein <- death - birth
einstein
Вы разрабатываете веб-сайт, на котором пользователи должны входить в систему и выходить из неё. Вам нужно узнать общее и среднее время, которое конкретный пользователь проводит на вашем сайте. Этот пользователь заходил на сайт 5 раз и столько же раз выходил. Соответствующие значения хранятся в векторах login и logout, которые уже определены в рабочей среде.
Это упражнение является частью курса
Intermediate R
Инструкции к упражнению
- Вычислите разность между двумя векторами
logoutиlogin, то есть время, которое пользователь провёл онлайн в каждой отдельной сессии. Сохраните результат в переменнуюtime_online. - Выведите переменную
time_onlineна экран. - Вычислите суммарное время пребывания пользователя онлайн и выведите результат.
- Вычислите среднее время пребывания пользователя онлайн и выведите результат.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# login and logout are already defined in the workspace
# Calculate the difference between login and logout: time_online
# Inspect the variable time_online
# Calculate the total time online
# Calculate the average time online