我正在尝试用类似组的平均值替换数据中的一些缺失值。
我的数据如下所示:
X Y
1 x y
2 x y
3 NA y
4 x y
我希望它看起来像这样:
X Y
1 x y
2 x y
3 y y
4 x y
我写了这个,它奏效了
for(i in 1:nrow(data.frame){
if( is.na(data.frame$X[i]) == TRUE){
data.frame$X[i] <- data.frame$Y[i]
}
}
但是我的 data.frame 几乎有 50 万行长,而且 for/if 语句非常慢。我想要的是类似的东西
is.na(data.frame$X) <- data.frame$Y
但这会出现大小不匹配的错误。似乎应该有一个命令可以执行此操作,但我在 SO 或 R 帮助列表中找不到它。有任何想法吗?