【发布时间】:2015-07-17 11:13:18
【问题描述】:
我认为这是描述我想做的最好的方式:
df$column <- ifelse(is.na(df$column) == TRUE, 0, 1)
但是列是动态的。这是因为我有大约 45 列都具有相同的内容,我要做的就是检查每个单元格,如果其中有内容,则将其替换为 1,如果没有,则替换为 0。我当然尝试了很多不同的东西,但由于 R 中似乎没有 df[index][column],我迷路了。我本来希望这样的事情能奏效,但没有:
for (index in df) {
for (column in names(df)) {
df[[index]][[column]] <- ifelse(is.na(df[[index]][[column]]) == TRUE, 0, 1)
}
}
我可以用其他语言(甚至 Excel)快速做到这一点,但我只是在学习 R,并想了解为什么如此简单的事情在用于处理数据的语言中似乎如此复杂。谢谢!
【问题讨论】: