我有一个数据框看起来像这样:
df <- data.frame(matrix(c(1,351,NA,1,0,2,585,0,1,1,3,321,NA,0,1,4,964,NA,NA,NA,5,556,0,1,NA), ncol = 5, byrow = TRUE))
colnames(df) <- c('id','value','v1','v2','v3')
现在我想把子集
c('v1','v2','v3')
中所有不是所有NA的行中的NA替换为0(零)。所以我想要这样:
R> df
id value v1 v2 v3
1 1 351 NA 1 0
2 2 585 0 1 1
3 3 321 NA 0 1
4 4 964 NA NA NA
5 5 556 0 1 NA
最终变成这样:
R> df
id value v1 v2 v3
1 1 351 0 1 0
2 2 585 0 1 1
3 3 321 0 0 1
4 4 964 NA NA NA
5 5 556 0 1 0
请注意,
df[4, ]
在 c('v1', 'v2', 'v3')
这些列仍然有NA值。