很多人都会问如何剥夺时间并保留日期,但另一方面呢?鉴于:
myDateTime <- "11/02/2014 14:22:45"
Run Code Online (Sandbox Code Playgroud)
我想看看:
myTime
[1] "14:22:45"
Run Code Online (Sandbox Code Playgroud)
时区没有必要.
我已经尝试过(从其他答案)
as.POSIXct(substr(myDateTime, 12,19),format="%H:%M:%S")
Run Code Online (Sandbox Code Playgroud)
[1]"2013-04-13 14:22:45 NZST"
目的是分析仅在一天中的几天记录的事件.
谢谢
编辑:
事实证明,没有纯粹的"时间"对象,所以每次都必须有一个日期.
最后我用了
as.POSIXct(as.numeric(as.POSIXct(myDateTime)) %% 86400, origin = "2000-01-01")
Run Code Online (Sandbox Code Playgroud)
而不是角色解决方案,因为我需要对结果进行算术运算.这个解决方案类似于我原来的解决方案,除了可以一致地控制日期 - 在这种情况下是"2000-01-01",而我的尝试只是在运行时使用了当前日期.
GSe*_*See 23
我想你正在寻找这个format功能.
(x <- strptime(myDateTime, format="%d/%m/%Y %H:%M:%S"))
#[1] "2014-02-11 14:22:45"
format(x, "%H:%M:%S")
#[1] "14:22:45"
Run Code Online (Sandbox Code Playgroud)
那character不是"时间",而是可以使用类似的东西,aggregate如果你的意思是"只分析几天内记录的事件."
如果 GMT 一天内的时间对您的问题有用,您可以使用%%余数运算符 来获取余数86400(一天中的秒数)。
stamps <- c("2013-04-12 19:00:00", "2010-04-01 19:00:01", "2018-06-18 19:00:02")
as.numeric(as.POSIXct(stamps)) %% 86400
## [1] 0 1 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16122 次 |
| 最近记录: |