r - 使用日期时间格式,无法处理 POSIXct。(as.POSIXlt.numeric(x) 中的错误:必须提供“原点”)
问题描述
例如,我的数据库中有一个日期时间列,格式为“2017-01-02 8:27”。我想在这个日期时间版本上增加 10 分钟。
dat$EventTime=as.POSIXct(strptime( dat$EventTime, "%Y-%m-%d %H:%M"), tz = "", origin = '1970-01-01 00:00')
--date-time 格式变为 2017-01-02 08:27:00 没关系,但是当我尝试添加 10 分钟时
dat$EventTime[1]+minute(10)
--我遇到了这个错误
as.POSIXlt.numeric(x) 中的错误:必须提供“原点”
——你能帮我解决这个问题吗?
解决方案
只需anytime()
从不需要格式或来源anytime
的包中使用即可:
R> anytime("2017-01-02 08:27")
[1] "2017-01-02 08:27:00 CST"
R>
结果对象当然POSIXct
是可以随意计算的:
R> anytime("2017-01-02 08:27") + seq(1,6)*60
[1] "2017-01-02 08:28:00 CST" "2017-01-02 08:29:00 CST" "2017-01-02 08:30:00 CST"
[4] "2017-01-02 08:31:00 CST" "2017-01-02 08:32:00 CST" "2017-01-02 08:33:00 CST"
R>
编辑:我刚刚意识到我们使用了默认(Boost)解析器不喜欢的单个数字“8”。现在更正为“08”。
推荐阅读
- .net - Blazor 应用如何在不调用 Startup.cs 中的 MapRazorPages() 的情况下公开 Razor Pages 终结点?
- node.js - 如何在猫鼬的 findOneAndUpdate 过滤器中使用 _id?
- asp.net - 将asp.net web api发布到天蓝色,数据库连接不起作用
- r - 如何改进零膨胀负二项式回归模型?
- node.js - 如何在节点js中使用拆分功能
- laravel - 为什么在我的请求中检查 json mimetype 不起作用?
- react-native - 如何使用反应导航将图标添加到抽屉项目?
- reactjs - ReactJS - 在整个网页上显示一个网格
- express - Express Server API 到 Next.js 的 CORS 问题
- laravel - 路由模型绑定不起作用 Laravel 6