我有一个像下面的时间列。R条件的组时间列例如。每小时
Tcol <- as.data.table(c(1211, 1237, 2106, 1348, 2136, 1745, 1740, 1330, 1755, 1939, 2326, "NA"))
Tcol$V1= as.numeric(gsub("\\D+", "", Tcol$V1))
Tcol$V1[is.na(Tcol$V1)] <- 100
Tcol$V1 <- chron::chron(times=Tcol$V1)
Glimpse(Tcol)
Observations: 12
Variables: 1
$ V1 <S3: times> 1211, 1237, 2106, 1348, 2136, 1745, 1740, 1330, 1755, 1939, 2326, 100
我想通过1小时的块或2小时的块进行绘图分组。即。
100 1
1200 2
1300 2
1700 3
1900 1
2300 1
在SO上搜索其他解决方案,看起来,我应该使用cut()。但每次我申请cut()时,都会出现错误。
table(cut(Tcol$V1, breaks="hour"))
Error in breaks + 1 : non-numeric argument to binary operator
我无法找到具有相同问题的其他帖子来解决我的问题。所以我希望有人能帮忙。
也许'as.integer(droplevels(切(as.POSIXct(克隆氏病(TCOL $ V1)),符= “小时”)))' – akrun
错误as.POSIXct(克隆氏病(TCOL $ V1)):找不到函数“chron” – stuck
您在那里的时钟对象不是以小时为单位。试试'chron(times = 1211)#时间(天):1211'。如果你确实已经按照你的要求格式化了,我想你应该在你接受的答案中使用'trunc.times'而不是'substr'。 – Frank