我有一个时间变量说x。我的矢量类是一个字符
x <- c("06:59:20","19:13:31", "06:08:02", "00:25:14", "19:25:01" ,"21:21:44"
,"19:04:25" , "19:43:31", "16:00:13", "05:15:37", "05:52:16", "21:47:51", "06:33:36"
,"06:59:29" ,"20:06:04", "05:08:15", "20:09:51", "21:52:25", "19:07:22", "19:37:26")
我使用以下方法将其转换为时间对象
x_posix <- as.POSIXct(x, format = "%H:%M:%S")
x<- strftime(x_posix, format="%H:%M:%S")
x <- times(x)
[1] 06:59:20 19:13:31 06:08:02 00:25:14 19:25:01 21:21:44 19:04:25 19:43:31 16:00:13 05:15:37 05:52:16 21:47:51 06:33:36 06:59:29 20:06:04
[16] 05:08:15 20:09:51 21:52:25 19:07:22 19:37:26
现在我想知道任何时间间隔之间有多少值。 假设如果我想知道有多少值在6到7之间,那么我想要包括6:00:00(包括6:00:00)之间的所有值以及所有小于的值。或等于6:59:59。 R有什么方法可以完成这项任务吗?
答案 0 :(得分:2)
我们可以使用
library(chron)
sum(x1 >= times("06:00:00") & x1 < times("07:00:00"))
#[1] 4
x1 <- times(x)