time <- c('2020-04-25 00:00:12', '2020-04-25 00:01:20', '2020-04-25 00:02:40',
'2020-04-25 00:02:48', '2020-04-25 00:02:58', '2020-04-25 00:03:15',
'2020-04-25 00:03:45', '2020-04-25 00:04:23', '2020-04-25 00:04:45',
'2020-04-25 00:05:18', '2020-04-25 00:05:36', '2020-04-25 00:05:55')
id <- c('1', '1', '1', '1', '1', '1', '1', '1', '1', '1', '1', '1')
status <- c("idle", "idle", "idle", "idle", "off", "off", "idle", "idle", "use", "use", "use", "idle" )
df <-data.frame(id, time, status)
df
id time status
1 1 2020-04-25 00:00:12 idle
2 1 2020-04-25 00:01:20 idle
3 1 2020-04-25 00:02:40 idle
4 1 2020-04-25 00:02:48 idle
5 1 2020-04-25 00:02:58 off
6 1 2020-04-25 00:03:15 off
7 1 2020-04-25 00:03:45 idle
8 1 2020-04-25 00:04:23 idle
9 1 2020-04-25 00:04:45 use
10 1 2020-04-25 00:05:18 use
11 1 2020-04-25 00:05:36 use
12 1 2020-04-25 00:05:55 idle
Привет, у меня есть набор данных выше, и я хотел бы рассчитать разницу во времени для каждого блока статуса. как бы ты это сделал? т.е. я хотел бы знать разницу во времени между первым «холостым» и последним «холостым» в первом блоке и так далее. другими словами, я хотел бы, чтобы разница во времени между idle [4] -idle [1], idle [8] -idle [7] et c.
есть ли способ сделать это в R