R as.POSIXct conversion to as.Date



我正在处理一个data.frame对象,该对象在第一列中包含一个"Date"字段。最初,我使用as.POSIXct()将所有日期(以纯字符串形式出现在"Date"中(转换为POSIXct日期,但后来我意识到作为.Date就足够了。因此,我将as.Date()函数应用于POSIXct日期,得到了一个奇怪的结果:所有日期都缩减了一天("2020-07-02 01:00:00"-->"2020-007-01"(。用as.Date.POSIXct()也进行了试验,结果相同
我在转换过程中遗漏了什么吗?这种转换合法吗
感谢

在不知道数据的确切外观的情况下,我的最佳猜测是从POSIXct转换时as.date((函数调用中使用的起始日期。Hadley在这里解释了POSIXct和POSIXlt数据类型实际上只是双浮点值,表示自1970-01-01以来的秒数。根据作为.Date,如果要转换类numeric的值,则应为origin参数提供一个值。

您可以重新加载原始数据,然后使用as.Date((和as.POSIXct((,看看origin参数如何进行准确的转换。

最新更新