使用 R 查找昨天的日期

问题描述 投票:0回答:2

在我的一个 R 脚本中,我需要查找昨天的日期,我可以使用此命令在 Mac 上轻松完成此操作。

yesterday <- format(Sys.Date()-1,"%m/%d/%Y")
yesterday
[1] "03/17/2017"

所以基本上

Sys.Date()-1
给了我昨天的日期。但是,当我在 ubuntu 16.04 计算机(AWS 实例)上运行此命令时,它不起作用。它会返回今天的日期吗?还有其他人经历过吗?如果不使用
Sys.Date()-1
命令,如何获取昨天的日期?

更新:亚马逊AWS表示服务器位置位于加利福尼亚州北部,但经过进一步检查,似乎服务器的时区实际上比之前7小时?我使用这个工具,IP Location Finder 尝试对 IP 地址进行地理定位,并且在北加州找到了 IP?令人困惑,但现在我只是在日期变量中添加 7 小时,这是一个短期修复,但我想了解导致此时区问题的原因。

r date format
2个回答
3
投票

Sys.Date 返回“Date”类的对象,而 Sys.time 返回“POSIXct”类(DateTimeClasses)的对象。

Sys.time 会更容易操作精确时间,因为“POSIXct”是纪元后的秒数,而不是 Date 对象。请参阅:https://www.epochconverter.com/ 以更好地了解纪元时间。

无论如何,任何一种方法都应该有效,可能只是你的 Ubuntu 系统时间不正确。


0
投票

lubridate::today() - 1

Sys.Date() - 1

© www.soinside.com 2019 - 2024. All rights reserved.