根据两列向前传送多个列的非Na值

时间:2018-05-13 09:48:37

标签: dataframe

我正在寻找以下解决方案。

我希望向前传递我的非NA值,但只能在我的列名称中,在行C或A AND中用于多列。

有谁知道如何解决这个问题? :)

谢谢:)

1 个答案:

答案 0 :(得分:0)

您可以使用dplyrfill中的tidyr功能。您需要分组以确保只填写正确密钥中的值。

fill使用上一个条目填充缺失值,因此请确保数据符合您的要求。

library(dplyr)
library(tidyr)

df %>% 
  group_by(Key) %>% 
  fill(Value)

  Key   Date    Value  col4  col5
  <chr> <chr>   <int> <int> <int>
1 A     2001-06    NA    NA    NA
2 A     2001-07     2     2    NA
3 A     2002-08     2     1     1
4 C     2000-03     1    NA    NA
5 C     2000-05     1     1    NA
6 C     2000-07     2     2    NA