是否有一个函数可以将列中的值扩展到NA位置?[R]

是否有一个函数可以将列中的值扩展到NA位置?[R],r,data-cleaning,data-wrangling,R,Data Cleaning,Data Wrangling,下面是我的数据示例。我正在尝试将现有的Hour_of_Day值向下扩展,以填充缺少的信息。我希望能在这方面得到一些指导。谢谢大家! Hour_of_Day Counter Name People In People Out Day_of_Week Month_Day Year 1 12:00 AM Main 4 2 Thursday April 01 2021 2 <NA>

下面是我的数据示例。我正在尝试将现有的Hour_of_Day值向下扩展,以填充缺少的信息。我希望能在这方面得到一些指导。谢谢大家!

Hour_of_Day       Counter Name People In People Out Day_of_Week Month_Day  Year
1     12:00 AM               Main         4          2    Thursday  April 01  2021
2         <NA>            FLgate1         3          2    Thursday  April 01  2021
3         <NA>   FLgate1.Counter1         0          0    Thursday  April 01  2021
4         <NA>   FLgate1.Counter2         3          2    Thursday  April 01  2021
5         <NA>   FLgate2.Counter1         0          0    Thursday  April 01  2021
6         <NA>   FLgate2.Counter2         0          0    Thursday  April 01  2021
7         <NA>            FLgate2         1          0    Thursday  April 01  2021
8         <NA> RFIDGateFL3.Aisle1         0          0    Thursday  April 01  2021
9         <NA> RFIDGateFL3.Aisle2         1          0    Thursday  April 01  2021
10        <NA> RFIDGateFL3.Aisle3         0          0    Thursday  April 01  2021
11     1:00 AM               Main         0          0    Thursday  April 01  2021
12        <NA>            FLgate1         0          0    Thursday  April 01  2021
13        <NA>   FLgate1.Counter1         0          0    Thursday  April 01  2021
14        <NA>   FLgate1.Counter2         0          0    Thursday  April 01  2021
15        <NA>   FLgate2.Counter1         0          0    Thursday  April 01  2021
16        <NA>   FLgate2.Counter2         0          0    Thursday  April 01  2021
17        <NA>            FLgate2         0          0    Thursday  April 01  2021
18        <NA> RFIDGateFL3.Aisle1         0          0    Thursday  April 01  2021
我们可以使用tidyr的填充物

或者使用动物园的na.locf0

我们可以使用tidyr的填充物

或者使用动物园的na.locf0


这是一个带有cumsum+is.na的基本R选项


这是一个带有cumsum+is.na的基本R选项


我使用了填充选项!非常感谢。那很有效@三角肌请检查我使用了填充选项!非常感谢。那很有效@三角肌请检查
library(tidyr)
fill(df1, Hour_of_Day)
library(zoo)
df1$Hour_of_Day <- na.locf0(df1$Hour_of_Day)
transform(
  df,
  Hour_of_Day = c(NA, na.omit(Hour_of_Day))[cumsum(!is.na(Hour_of_Day)) + 1]
)