我想测试特定列中的值是否包含NA值,如果是,则用上一行中的值填充该NA空间。我仍在尝试摆脱apply
系列功能的困扰。
例如。我想转这个:
Date Balance
2012-01-01 1000
2012-01-02 NA
2012-01-03 NA
2012-01-04 1200
2012-01-05 1215
2012-01-06 NA
进入:
Date Balance
2012-01-01 1000
2012-01-02 1000
2012-01-03 1000
2012-01-04 1200
2012-01-05 1215
2012-01-06 1215
最佳答案
这是Zoo包中na.locf
函数的一项任务。参见?na.locf
考虑DF
是您的data.frame,然后:
DF <- read.table(text=" Date Balance
2012-01-01 1000
2012-01-02 NA
2012-01-03 NA
2012-01-04 1200
2012-01-05 1215
2012-01-06 NA", header=TRUE)
library(zoo)
na.locf(DF)
Date Balance
1 2012-01-01 1000
2 2012-01-02 1000
3 2012-01-03 1000
4 2012-01-04 1200
5 2012-01-05 1215
6 2012-01-06 1215
关于R-遍历每一行并填充上一行的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14900165/