R:如果另一个变量的值为NA,如何将变量的值重新编码为NA

时间:2015-06-11 14:36:20

标签: r

我正在清理数据集,我需要重新编码变量DebtRatio,以便在MonthlyIncome的值为NA时得到值NA。默认情况下,这不是真的,因此具有NA的值为DebtRatio(自然地)提供了疯狂的值。然而,这些案例有各种其他有趣的信息,所以我不希望完全删除它们。只需将这些案例的值重新编码为NA。

然而,当我运行我的脚本时,它似乎没有按照我想要的方式运行。我终端没有收到错误,但价值根本没有变化。

credit_train_18$DebtRatio[credit_train_18$MonthlyIncome == NA] <- NA

这在重新编码我的分类变量时有效,所以我不确定为什么它在这种特殊情况下会失败。

我真的很感激这个问题的解决方案

1 个答案:

答案 0 :(得分:2)

您应该使用is.na()而不是检查是否相等。

credit_train_18$DebtRatio[is.na(credit_train_18$MonthlyIncome)] <- NA

您的方法存在问题,因为NA == NA返回NA而不是TRUE。