如何计算R中的最短和最长时间间隔?

如何计算R中的最短和最长时间间隔?,r,time,lubridate,R,Time,Lubridate,我有一个名为phone的数据集: 时间戳 时间 日期 2021-01-12 10:42:50.221 10:42:50 2021-01-12 2021-01-12 10:46:01.826 10:46:01 2021-01-12 2021-01-12 10:50:10.063 10:50:10 2021-01-12 2021-01-12 10:53:10.715 10:53:10 2021-01-12 2021-01-12 10:53:14.329 10:53:14 2021-01-12 202

我有一个名为
phone
的数据集:

时间戳 时间 日期 2021-01-12 10:42:50.221 10:42:50 2021-01-12 2021-01-12 10:46:01.826 10:46:01 2021-01-12 2021-01-12 10:50:10.063 10:50:10 2021-01-12 2021-01-12 10:53:10.715 10:53:10 2021-01-12 2021-01-12 10:53:14.329 10:53:14 2021-01-12 2021-01-12 10:54:19.792 10:54:19 2021-01-12 2021-01-12 11:01:43.044 11:01:43 2021-01-12 2021-01-12 11:04:36.202 11:04:36 2021-01-12
您就快到了,
difftime(time1,time2)
计算time1-time2,因为您的时间戳是从最早到最晚排序的,所以对于第二个参数,这个差异总是=的

df$diff=c(NA,difftime(tail(df$TIMESTAMP,-1),head(df$TIMESTAMP,-1),unit="hour"))
df[order(df$diff,decreasing=T),]

                 TIMESTAMP     time       date        diff
10 2021-01-12 11:18:59.169 11:18:59 2021-01-12 0.189592500
7  2021-01-12 11:01:43.044 11:01:43 2021-01-12 0.123125556
11 2021-01-12 11:25:44.954 11:25:44 2021-01-12 0.112718056
3  2021-01-12 10:50:10.063 10:50:10 2021-01-12 0.068954722
2  2021-01-12 10:46:01.826 10:46:01 2021-01-12 0.053223611
4  2021-01-12 10:53:10.715 10:53:10 2021-01-12 0.050181111
9  2021-01-12 11:07:36.636 11:07:36 2021-01-12 0.050120556
8  2021-01-12 11:04:36.202 11:04:36 2021-01-12 0.048099444
15 2021-01-12 11:30:24.349 11:30:24 2021-01-12 0.038577222
14 2021-01-12 11:28:05.471 11:28:05 2021-01-12 0.027793611
6  2021-01-12 10:54:19.792 10:54:19 2021-01-12 0.018184167
13 2021-01-12 11:26:25.414 11:26:25 2021-01-12 0.008653056
12 2021-01-12 11:25:54.263 11:25:54 2021-01-12 0.002585833
5  2021-01-12 10:53:14.329 10:53:14 2021-01-12 0.001003889
1  2021-01-12 10:42:50.221 10:42:50 2021-01-12          NA

哎呀,我没好好想清楚!非常感谢你的回答,非常有帮助。