在R中,我使用带有if语句的for循环替换数据帧中超出某个范围的所有值。
for (i in seq_along(df$Age)) {
if (df$Age[[i]] > 90 || df$Age[[i]] < 16) {
df$Age[[i]] <- NA
}
}
这似乎是笨拙的代码。有没有更快,更简单的方法来做到这一点?
答案 0 :(得分:1)
是的!有一个名为replace
的命令:
df$Age <- with(df, replace(Age, Age > 90 | Age < 16, NA))