我試圖爲每組增加一列。所以如果有價值,那麼我們會根據它之前的價值來增加它,否則我們就放棄它。按組遞增
因此,例如,它會從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