我试图为每组增加一列。所以如果有价值,那么我们会根据它之前的价值来增加它,否则我们就放弃它。按组递增
因此,例如,它会从df到dfb。
df <- data.frame(group = c("A", "A", "B", "B", "B", "C", "C", "C", "D", "D"),
num = c(1, NA, NA, 8, NA, 5, NA, NA, 10, NA))
dfb <- data.frame(group = c("A", "A", "B", "B", "B", "C", "C", "C", "D", "D"),
num = c(1, 2, NA, 8, 9, 5, 6, 7, 10, 11))
> df
group num
1 A 1
2 A NA
3 B NA
4 B 8
5 B NA
6 C 5
7 C NA
8 C NA
9 D 10
10 D NA
> dfb
group num
1 A 1
2 A 2
3 B NA
4 B 8
5 B 9
6 C 5
7 C 6
8 C 7
9 D 10
10 D 11
我最好的尝试是这一点,但
dfc <- df %>%
mutate(num = ifelse(is.na(num),lag(num) + 1, num))
删除我刚才的问题,因为以前不好界定我的问题,它没有工作。 感谢您的帮助!
目前尚不清楚为什么你删除前面的问题,因为我在删除一个解决方案与新的范例工程,以及 – akrun