R lag/lead - 如何忽略现有行前后的行
R lag/lead - how to ignore rows before and after existing rows
我在 R 中有这个数据框
id a b c d
1 42 3 2 NA 5
2 42 NA 6 NA 6
3 42 1 NA 7 8
有这样的功能
library(dplyr)
dataframe %>%
mutate(e = lead(d))
我在第三行 NA 因为没有第四行,但是我怎样才能从第一行 - 5 中获取值?结果应该是这样的
id a b c d e
1 42 3 2 NA 5 6
2 42 NA 6 NA 6 8
3 42 1 NA 7 8 5
我们可以在lead
函数的default
参数中使用first
函数。
library(dplyr)
dat2 <- dat %>%
mutate(e = lead(d, default = first(d)))
dat2
# id a b c d e
# 1 42 3 2 NA 5 6
# 2 42 NA 6 NA 6 8
# 3 42 1 NA 7 8 5
数据
dat <- read.table(text = " id a b c d
1 42 3 2 NA 5
2 42 NA 6 NA 6
3 42 1 NA 7 8",
header = TRUE)
我在 R 中有这个数据框
id a b c d
1 42 3 2 NA 5
2 42 NA 6 NA 6
3 42 1 NA 7 8
有这样的功能
library(dplyr)
dataframe %>%
mutate(e = lead(d))
我在第三行 NA 因为没有第四行,但是我怎样才能从第一行 - 5 中获取值?结果应该是这样的
id a b c d e
1 42 3 2 NA 5 6
2 42 NA 6 NA 6 8
3 42 1 NA 7 8 5
我们可以在lead
函数的default
参数中使用first
函数。
library(dplyr)
dat2 <- dat %>%
mutate(e = lead(d, default = first(d)))
dat2
# id a b c d e
# 1 42 3 2 NA 5 6
# 2 42 NA 6 NA 6 8
# 3 42 1 NA 7 8 5
数据
dat <- read.table(text = " id a b c d
1 42 3 2 NA 5
2 42 NA 6 NA 6
3 42 1 NA 7 8",
header = TRUE)