如何用前一天的值填充缺少的值?(使用dplyr-排列)

如何用前一天的值填充缺少的值?(使用dplyr-排列),r,R,我的数据输出是用NA填充季度缺失天数的值。我的数据如下 library(dplyr) account = rep(30005) qtr = c('Cur_QTR','Cur_QTR','Cur_QTR','Last_QTR','Last_QTR', 'Last_QTR','Last_QTR', 'Last_QTR', 'same_last', 'same_la

我的数据输出是用NA填充季度缺失天数的值。我的数据如下

library(dplyr)
account = rep(30005)
qtr = c('Cur_QTR','Cur_QTR','Cur_QTR','Last_QTR','Last_QTR', 'Last_QTR','Last_QTR',
                       'Last_QTR',
                       'same_last',
                       'same_last',
                       'same_last',
                       'same_last',
                       'same_last',
                       'same_last',
                       'same_last')
day = c(1,3,5,1,2,3,4,5,1,2,3,4,5,6,7)
value = c(5,10,15,20,25,30,35,40,45,50,55,60,65,70,75)

df = data.frame(account,qtr,day,value)

df1 <- df %>%
  spread(key=qtr, value = value)

我们可以使用
fill
功能

df %>% 
   spread(qtr, value) %>%
   fill(Cur_QTR, Last_QTR)
#   account day Cur_QTR Last_QTR same_last
#1   30005   1       5       20        45
#2   30005   2       5       25        50
#3   30005   3      10       30        55
#4   30005   4      10       35        60
#5   30005   5      15       40        65
#6   30005   6      15       40        70
#7   30005   7      15       40        75
df %>% 
   spread(qtr, value) %>%
   fill(Cur_QTR, Last_QTR)
#   account day Cur_QTR Last_QTR same_last
#1   30005   1       5       20        45
#2   30005   2       5       25        50
#3   30005   3      10       30        55
#4   30005   4      10       35        60
#5   30005   5      15       40        65
#6   30005   6      15       40        70
#7   30005   7      15       40        75