首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >奇怪的POSIXct错误

奇怪的POSIXct错误
EN

Stack Overflow用户
提问于 2013-05-30 02:43:44
回答 1查看 158关注 0票数 2

由于某些原因,as.POSIXct"2013-03-10 02:00:00.000"的解释与该格式中的其他有效日期时间不同。

代码语言:javascript
复制
> as.POSIXct("2013-03-10 01:00:00.000") #Different time, same date
[1] "2013-03-10 01:00:00 PST"

> as.POSIXct("2013-03-11 02:00:00.000") #Same time, different date
[1] "2013-03-11 02:00:00 PDT"

> as.POSIXct("2013-03-10 02:00:00.000")
[1] "2013-03-10 PST"

我使用RODBC包从数据库中读取数据,它会自动将整个datetimes列转换为POSIXct类。这会导致整个列丢失时间信息。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-30 02:49:02

这是一个夏令时问题:显然,2013-03-10的凌晨2点不存在于该时区。尽管如此,有趣的是(至少对我而言) as.POSIXct没有抱怨,而是默默地返回了一个稍微奇怪的答案。一个问题可能是,R通常使用系统库来处理其中的一些东西,因此底层库也是如此……

整合评论中的有用信息:@JoshUlrich指出,由于RODBC使用系统级时区而不是允许您指定时区,因此您可以在导入数据之前使用Sys.setenv(TZ="GMT")来绕过这一问题(假设原始数据确实是格林威治时间格式的)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16821557

复制
相关文章

相似问题

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