【发布时间】:2021-05-13 07:51:41
【问题描述】:
来自一位经验不足的程序员的问题。我正在尝试创建虚拟变量来指示问题是否在 2008 年 9 月 15 日(金融危机)之后。我的数据集的日期格式如下:15-09-2008。由于变量被 R 识别为字符,我尝试通过运行以下代码将其转换为日期:
c$NewDate <- strptime(c$IssueDate, "&d-&m-&Y")
format(c$NewDate, "&Y/&m/&d")
但是,上面的代码已经导致变量 c$NewDate 只返回 NA,而数据帧 c 中根本没有 NA。我真的不明白它是从哪里来的。
正如我所说,我的主要目标是创建虚拟变量。我已经在 dd-mm-yy 格式中尝试了以下代码:c$GFC <- ifelse(c$IssueDate > as.Date("15-09-2008", origin = "10-01-1986"), 0, 1),但这不起作用。它表示 1986 年 1 月 10 日发行的 1 和 1986 年 24 月 1 日发行的 0。因此,这根本没有意义。如果有比这更快的方法来创建指示问题是否在 2008 年 9 月 15 日之后出现的虚拟对象,我也很想知道!
【问题讨论】:
-
图片不是共享数据/代码的正确方式。以更易于复制的可复制格式添加它们。阅读how to give a reproducible example。
标签: r special-characters date-formatting