【发布时间】:2023-03-15 15:57:01
【问题描述】:
我有一个看起来像这样的数据框
df <- data.frame(task = c(1, 2, 3, 4, 5, NA),
day = c(10, 6, 7, 9, 9, 10),
deadline = c(7, 12, 9, 7, 9, NA),
completion = c(1, 1, 1, 1, 0, NA))
现在我想创建一个虚拟变量来显示任务是否在完成当天过期,因此我创建了这段代码,不知何故它没有给我正确的结果。
df$overduetask <- ifelse(df$completion == 1 & df$day > df$deadline, 1,0)
所以我的想法是,如果一个任务已经完成(completion = 1)并且日期大于截止日期,那么这个任务就过期了。 我为过期变量得到的输出只有 0,这是我手动检查的,不能为真。
【问题讨论】:
-
能否格式化您的数据
-
“错误结果”是什么?您可以为您在此处向我们展示的数据样本添加所需的结果吗?
-
@RAB 新创建的变量只填充了0,但我手动检查发现确实有一些变量归类为过期
-
i 您提供给我们的数据,没有一天超过截止日期,所以它们都为 0。如果有特定的实例不起作用,那么您需要将它们包含在你的问题!帮帮我们,伙计
-
@RAB 我编造了数据,在我的真实 df 中我有这些案例。我想我对完成变量做错了什么,或者它对你来说是否正确。我会尽快编辑。
标签: r dummy-variable