回填面板数据集中的 NA 值

back fill NA values in panel data set

我想知道如何在面板数据集中回填 NA 值。

数据集

date    firms   return
1999      A      NA
2000      A      5
2001      A      NA
1999      B      9
2000      B      NA
2001      B      10

预期结果

date    firms   return
1999      A      5
2000      A      5
2001      A      NA
1999      B      9
2000      B      10
2001      B      10

我使用此公式用面板数据集中的先前值填充 NA 值

library(dplyr)
library(tidyr)

df1<-df %>% group_by(firms) %>% fill(return)

有没有像这样的简单方法可以用面板数据集中的下一个值填充 NA 值。

你几乎成功了。

df <- df %>% group_by(firms) %>% fill(return, .direction="up")
df
# A tibble: 6 x 3
# Groups:   firms [2]
   date firms return
  <int> <fct>  <int>
1  1999 A          5
2  2000 A          5
3  2001 A         NA
4  1999 B          9
5  2000 B         10
6  2001 B         10