LastDat-6ren">
gpt4 book ai didi

r - charToDate(x) 错误

转载 作者:行者123 更新时间:2023-12-02 22:04:54 25 4
gpt4 key购买 nike

我想选择仅包含当前日期信息的 data.frame 子集。

today = Sys.Date()
LasttDate = paste("'",today,"'",sep = "")
> LastDate
[1] "'2013-04-30'"

选择是通过以下包含日期的代码执行的,它有效

Lastdbdata = dbdata[dbdata$DateNav == '2013-04-30',]

如果我们不想一直写日期,但我们希望在运行代码时自动选择它,尽管我们可以这样写

    Lastdbdata = dbdata[dbdata$DateNav == LastDate,]
Errore in charToDate(x) :
character string is not in a standard unambiguous format

但它不起作用并返回上面的错误。解决这个错误的技巧是什么?

最佳答案

您收到该错误是因为 DateNav 已经是 Date 格式,而 Lastdate 不是。将 DateNavtoday 进行比较应该可以解决问题:

> Sys.Date()
[1] "2013-04-30"
> Sys.Date()==as.Date("2013-04-30")
[1] TRUE
> Sys.Date()==as.Date("'2013-04-30'")
Error in charToDate(x) :
character string is not in a standard unambiguous format

事实上,即使 DateNav 不是 Date 格式,您也可以/应该直接与 today 进行比较。

> Sys.Date()=="2013-04-30"
[1] TRUE

我不确定插入单引号的理由是什么。如果出于某种其他原因要将日期转换为字符,总有

> as(Sys.Date(),"character")
[1] "2013-04-30"

关于r - charToDate(x) 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16297731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com