将值替换为上一行值

Luk*_*AJN 1 r

我有一个隔夜利息掉期的数据框架,如下所示

Date           DSWP10
07/01/2015     2.1
06/01/2015     .
05/01/2015     .
04/01/2015     1.99
03/01/2015     1.98
02/01/2015     .
01/01/2015     1.95
Run Code Online (Sandbox Code Playgroud)

我希望将句号 (.) 的值替换为前一天的值,以便数据框看起来像

Date           DSWP10
07/01/2015     2.1
06/01/2015     1.99
05/01/2015     1.99
04/01/2015     1.99
03/01/2015     1.98
02/01/2015     1.95
01/01/2015     1.95
Run Code Online (Sandbox Code Playgroud)

知道如何完成这件事吗?

Kar*_*k S 6

这是否有效:

library(dplyr)
library(tidyr)
df %>% mutate(DSWP10 = as.numeric(na_if(DSWP10, '.'))) %>%  fill(DSWP10, .direction = 'up')
# A tibble: 7 x 2
  Date       DSWP10
  <chr>       <dbl>
1 07/01/2015   2.1 
2 06/01/2015   1.99
3 05/01/2015   1.99
4 04/01/2015   1.99
5 03/01/2015   1.98
6 02/01/2015   1.95
7 01/01/2015   1.95
Run Code Online (Sandbox Code Playgroud)