如何解决执行 seq 函数时的错误?

How do I solve error in executing seq function?

我是运行以下代码,以便获取从 2014 年 1 月 22 日到 2014 年 2 月 2 日的所有日期。但是,我收到一个我不理解的错误(正如我遵循的函数页面上的代码:https://www.rdocumentation.org/packages/base/versions/3.5.2/topics/seq.Date)

seq(as.Date("22/01/2014"), as.Date("02/02/2014"), "days")

给我以下错误:

 Error in seq.int(0, to0 - from, by) : wrong sign in 'by' argument

这里出了什么问题?

尝试其中的一些选项:

seq.Date(as.Date("2014/01/22"), as.Date("2014/02/02"), by="days")
seq.Date(as.Date("22/01/2014", format="%d/%m/%Y"), as.Date("02/02/2014", format="%d/%m/%Y"), by="days")
seq(as.Date("2014/01/22"), as.Date("2014/02/02"), by="days")
seq(as.Date("22/01/2014", format="%d/%m/%Y"), as.Date("02/02/2014", format="%d/%m/%Y"), by="days")

尝试调试您的代码。每个部分是否都按您的预期解决?与示例进行比较,看看有哪些差异:

Them: seq(as.Date("1910/1/1"), as.Date("1999/1/1"), "days")
You   seq(as.Date("22/01/2014"), as.Date("02/02/2014"), "days")

你能运行举个例子吗?如果不是,那么您的环境中正在发生一些险恶的事情。

您的代码与示例匹配吗?尝试修改示例,一次修改一个部分,以匹配您的尝试。

可能是日期格式问题。尝试执行一小部分代码:

as.Date("22/01/2014")
[1] "0022-01-20"

这样看起来对吗?也许 as.Date 不理解美国日期格式。尝试修改您的代码:

seq(as.Date("2014-01-22"), as.Date("2014-02-02"), by="days")
[1] "2014-01-22" "2014-01-23" "2014-01-24" "2014-01-25" "2014-01-26" "2014-01-27" "2014-01-28" "2014-01-29" "2014-01-30" "2014-01-31" "2014-02-01"
[12] "2014-02-02"