Как выбрать максимальную метку времени для каждой группы? - PullRequest
0 голосов
/ 14 февраля 2019

Как выбрать максимальную метку времени для каждой группы в R.

     df <- read.table(text = " ID   obj MR_time
        1599    1   20:05:22
        1599    1   20:06:38
        1599    1   20:07:22
        1599    2   20:08:38
        1599    2   20:09:28", header = TRUE)

dt <- data.table(df)

Требуется вывод:

1599    1   20:07:22
1599    2   20:09:28

1 Ответ

0 голосов
/ 14 февраля 2019

Мы конвертируем его в DateTime и получаем индекс по группе (при условии, что group is ID, obj) для подмножества .SD (подмножество data.table)

dt[, .SD[which.max(as.POSIXct(MR_time, format = "%H:%M:%S"))], by = .(ID, obj)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...