r - 在 R 中使用 dplyr 包 Lag 函数时有没有办法省略 NA?

我有两列数据,我想从另一列的前一行条目中减去一列。 lag() dplyr 中的函数非常适合这个,但不幸的是我在第二行数据中有 NA。这意味着当前一行在第二列中有 NA 时计算行的新值时会导致 NA(见下表):

值 1 值 2 新值 不适用 2 不适用 13 3 11 6 不适用 3 6 4 不适用 5 4 1 表>

有没有办法省略 then NAs 并让它使用第二列中的最后一个实际值?就像一个na.rm=TRUE 那可以加吗?结果看起来像:

值 1 值 2 新值 不适用 2 不适用 13 3 11 6 不适用 3 6 4 3 5 4 1 表>

最佳答案

一个选项是预先改变值 2 并用最后一个非 NA 值填充 NA:

df %>%
  tidyr::fill(`Value 2`, .direction = "down")

https://stackoverflow.com/questions/72909730/

相关文章:

haskell - 在 Haskell 中内存递归函数

javascript - 使用 Object.keys() 获取 searchParams

ios - @Environment dismiss 的存在导致列表在滚动时不断重建其内容

databricks - Databricks 中的目录

python - 同时从两列中减去值( Pandas , python )

python - Linux 命令行中 Python 对象类的子类

python - 为什么这两种计算总和的方法会产生不同的运行时间

python - 我应该如何打破这个问题的循环?

c - 尝试创建一个 C 程序来打印出所有具有有理平方根的数字?

typescript - 将通用 typescript 类型限制为单个字符串文字值,不允许联合