我有一个nA值介于两者之间的dataframe df。我可以用特定的列值填充这些NA值吗
df
COlA COlB ColC
1 df 3
1 fsg 4
1 sdf 5
1 sd 6
NA NA 67
NA NA 54
2 adf 13
2 afsg 14
2 asdf 15
2 asd 16
NA NA 77
NA NA 84
预期输出
df
COlA COlB ColC
1 df 3
1 fsg 4
1 sdf 5
1 sd 6
1 NA 67
1 NA 54
2 adf 13
2 afsg 14
2 asdf 15
2 asd 16
2 NA 77
2 NA 84
那么有没有可能用上面的值填充COLA呢?
发布于 2020-01-24 14:26:15
您可以在tidyr
包中使用fill
函数。
library(tidyr)
fill(df, COlA)
COlA COlB ColC
1 1 df 3
2 1 fsg 4
3 1 sdf 5
4 1 sd 6
5 1 <NA> 67
6 1 <NA> 54
7 2 adf 13
8 2 afsg 14
9 2 asdf 15
10 2 asd 16
11 2 <NA> 77
12 2 <NA> 84
发布于 2020-01-24 18:52:53
我们可以从zoo
使用na.locf
library(zoo)
df$COlA <- na.locf(df$COlA)
https://stackoverflow.com/questions/59898298
复制