首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用chron格式化时间并在R中获得时间增量

如何使用chron格式化时间并在R中获得时间增量
EN

Stack Overflow用户
提问于 2022-08-02 15:23:18
回答 2查看 34关注 0票数 0

我有两个时间点,我想获得一个时间增量(注意,我的时间有毫秒)。我试过使用Chron软件包:

代码语言:javascript
复制
library(chron)
t1<- '2022/06/28 - 10:45:40:124'
t2<-'2022/06/28 - 10:54:50:193'
chron(t1, format='%Y/%m/%d - %H:%M:%S:%f')

但我得到了以下错误:

代码语言:javascript
复制
Error in parse.format(format): unrecognized format %Y/%m/%d - %H:%M:%S:%f
Traceback:

1. chron("2022/06/28 - 10:45:40:124", format = "%Y/%m/%d - %H:%M:%S:%f")
2. convert.dates(dates., format = fmt, origin. = origin.)
3. parse.format(format)
4. stop(paste("unrecognized format", format))

我的执行有什么问题?

谢谢你的回答。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-08-02 16:04:38

使用as.chron并修正格式。

代码语言:javascript
复制
fmt <- '%Y/%m/%d - %H:%M:%S:%OS'
t1c <- as.chron(t1, format = fmt)
t2c <- as.chron(t2, format = fmt)

# use any of these depending on what you want
t2c - t1c
difftime(t2c, t1c, units = "days")
difftime(t2c, t1c, units = "hours")    
difftime(t2c, t1c, units = "mins")
difftime(t2c, t1c, units = "secs")
票数 1
EN

Stack Overflow用户

发布于 2022-08-02 15:25:03

我们可以使用来自parse_dateparsedate

代码语言:javascript
复制
library(parsedate)
 parse_date(t1) - parse_date(t2)
Time difference of -9.166667 mins

或者使用chron

代码语言:javascript
复制
library(chron)
 t1new <- sub(":(\\d+)$", ".\\1", trimws(t1, whitespace = ".*-\\s*"))
t2new <- sub(":(\\d+)$", ".\\1", trimws(t2, whitespace = ".*-\\s*"))
chron(times = t2new, format = c(times = "h:m:s")) - 
   chron(times = t1new, format = c(times = "h:m:s"))
[1] 00:09:10
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73210009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档