POSIXct 停止工作并且无法更新时区
POSIXct stopped working and cannot update timezone
我正在尝试对日期进行子集化,例如此处:
df <- data.frame(
paste0("ID", rep(1:5)),
c("8/1/2019", "9/1/2019", "10/1/2019", "11/1/2019", "12/1/2019"))
names(df) <- c("ID", "dates")
df[as.POSIXct(strptime(df$dates, "%m/%d/%Y")) <
as.POSIXct("10/1/2019", "%m/%d/%Y"), ]
但我收到以下警告:
1: In strptime(xx, f, tz = tz) : unknown timezone '%m/%d/%Y'
2: In as.POSIXct.POSIXlt(x) : unknown timezone '%m/%d/%Y'
我 运行 过去经常使用这些命令,直到现在才遇到这个问题。它从 12 月 31 日开始,所以可能是新的 year/new 十年的原因,但我不确定。
我尝试按照建议手动设置时区 ,我还从 v. 3.5.3 更新到 3.6.2。都没有解决问题。
对这里发生的事情有任何了解吗?
在你的最后一行,你有
as.POSIXct("10/1/2019", "%m/%d/%Y")
as.POSIXct
的参数是 (x, tz, ...)
。要指定格式,您需要为其命名,即
df[as.POSIXct(strptime(df$dates, "%m/%d/%Y")) <
as.POSIXct("10/1/2019", format = "%m/%d/%Y"), ]
甚至更好,
df[as.POSIXct(df$dates, format = "%m/%d/%Y") <
as.POSIXct("10/1/2019", format = "%m/%d/%Y"), ]
我正在尝试对日期进行子集化,例如此处:
df <- data.frame(
paste0("ID", rep(1:5)),
c("8/1/2019", "9/1/2019", "10/1/2019", "11/1/2019", "12/1/2019"))
names(df) <- c("ID", "dates")
df[as.POSIXct(strptime(df$dates, "%m/%d/%Y")) <
as.POSIXct("10/1/2019", "%m/%d/%Y"), ]
但我收到以下警告:
1: In strptime(xx, f, tz = tz) : unknown timezone '%m/%d/%Y'
2: In as.POSIXct.POSIXlt(x) : unknown timezone '%m/%d/%Y'
我 运行 过去经常使用这些命令,直到现在才遇到这个问题。它从 12 月 31 日开始,所以可能是新的 year/new 十年的原因,但我不确定。
我尝试按照建议手动设置时区
对这里发生的事情有任何了解吗?
在你的最后一行,你有
as.POSIXct("10/1/2019", "%m/%d/%Y")
as.POSIXct
的参数是 (x, tz, ...)
。要指定格式,您需要为其命名,即
df[as.POSIXct(strptime(df$dates, "%m/%d/%Y")) <
as.POSIXct("10/1/2019", format = "%m/%d/%Y"), ]
甚至更好,
df[as.POSIXct(df$dates, format = "%m/%d/%Y") <
as.POSIXct("10/1/2019", format = "%m/%d/%Y"), ]