具有滞后函数的Dplyr变异会忽略NA值

时间:2018-07-18 13:21:02

标签: r dplyr na lag mutate

我想在数据帧上创建一个新列(Ifl_10min_mm.h),其值是前一行和实际行的总和。我正在使用带有mutate和lag功能的dplyr软件包。

当尝试将实际行值与先前的NA行值求和时,结果输出为NA。如何避免NA输出?

library(dplyr)
df = read.csv(file= "prueba3.csv ",header=TRUE,sep= ",")
df<-mutate(df, Ifl_10min_mm.h = (Rainfall_mm + lag(Rainfall_mm,n = 1L))*60/10)

这是所得数据帧的摘录:

  TIMESTAMP                    Rainfall_mm   Ifl_10min_mm.h
1      2017-03-31 18:00:00         0.0             NA
2      2017-03-31 18:05:00          NA             NA
3      2017-03-31 18:10:00          NA             NA
4      2017-03-31 18:15:00          NA             NA
5      2017-03-31 18:20:00          NA             NA
6      2017-03-31 18:25:00          NA             NA
7      2017-03-31 18:30:00         0.1             NA
8      2017-03-31 18:35:00          NA             NA
9      2017-03-31 18:40:00          NA             NA
10     2017-03-31 18:45:00          NA             NA
11     2017-03-31 18:50:00          NA             NA
12     2017-03-31 18:55:00          NA             NA
13     2017-03-31 19:00:00         0.3             NA

如您所见,生成的新变量Ifl_10min_mm.h具有NA作为输出。第7行的输出应为0.6,但输出NA。与第13行相同,它输出NA而不是1.8。

0 个答案:

没有答案