Нахождение времени пребывания в R - PullRequest
0 голосов
/ 02 февраля 2020

Я изо всех сил пытаюсь найти время задержки в R, я был бы очень признателен, если бы кто-нибудь мог мне помочь в этом. Пример данных

Я пытаюсь найти время задержки для каждого типа ежедневно, есть ли какой-нибудь способ сделать это? Заранее спасибо!

1 Ответ

0 голосов
/ 02 февраля 2020

Как уже упоминалось, было бы полезно, если бы вы могли предоставить свои данные через dput() вместо использования изображения.

Чтобы помочь вам начать работу, вы можете использовать tidyverse и group_by каждый день, а также Type:

library(tidyverse)

df %>%
  group_by(Date = as.Date(DateTime), Type) %>%
  mutate(DwellTime = difftime(last(DateTime), first(DateTime), units = "mins"))

Выход

# A tibble: 14 x 4
# Groups:   Date, Type [7]
   DateTime            Type  Date       DwellTime
   <dttm>              <fct> <date>     <drtn>   
 1 2020-01-01 12:00:00 abc   2020-01-01 120 mins 
 2 2020-01-01 12:30:00 abc   2020-01-01 120 mins 
 3 2020-01-01 12:31:00 xyz   2020-01-01  59 mins 
 4 2020-01-01 13:30:00 xyz   2020-01-01  59 mins 
 5 2020-01-01 14:00:00 abc   2020-01-01 120 mins 
 6 2020-01-02 10:20:00 abc   2020-01-02  56 mins 
 7 2020-01-02 11:15:00 xyz   2020-01-02 285 mins 
 8 2020-01-02 11:16:00 abc   2020-01-02  56 mins 
 9 2020-01-02 13:15:00 efg   2020-01-02   0 mins 
10 2020-01-02 16:00:00 xyz   2020-01-02 285 mins 
11 2020-01-03 13:30:00 abc   2020-01-03  30 mins 
12 2020-01-03 14:00:00 abc   2020-01-03  30 mins 
13 2020-01-03 15:00:00 xyz   2020-01-03  15 mins 
14 2020-01-03 15:15:00 xyz   2020-01-03  15 mins

Данные

df <- data.frame(
  DateTime = as.POSIXct(
             c("1/1/2020 12:00", "1/1/2020 12:30", "1/1/2020 12:31", "1/1/2020 13:30",
               "1/1/2020 14:00", "2/1/2020 10:20", "2/1/2020 11:15", "2/1/2020 11:16",
               "2/1/2020 13:15", "2/1/2020 16:00", "3/1/2020 13:30", "3/1/2020 14:00",
               "3/1/2020 15:00", "3/1/2020 15:15"), format = "%d/%m/%Y %H:%M"),
  Type = c("abc", "abc", "xyz", "xyz", 
           "abc", "abc", "xyz", "abc", 
           "efg", "xyz", "abc", "abc", 
           "xyz", "xyz")
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...