类似于这个帖子Calculate cummean() and cumsd() while ignoring NA values and filling NAs,但我更愿意坚持tidyverse
我的数据:
structure(list(season = c("Winter", "Winter", "Winter", "Winter",
"Winter", "Winter", "Winter", "Winter", "Winter", "Spring", "Spring",
"Spring", "Spring", "Spring", "Spring", "Spring", "Spring", "Spring"
), tmean = c(NA, 2, 3, 4, NA, NA, NA, 8, NA, 7, 8, 9, NA, NA,
5, 3, 2, NA)), class = "data.frame", row.names = c(NA, -18L))
season tmean
Winter NA
Winter 2
Winter 3
Winter 4
Winter NA
Winter NA
Winter NA
Winter 8
Winter NA
Spring 7
Spring 8
Spring 9
Spring NA
Spring NA
Spring 5
Spring 3
Spring 2
Spring NA
我想要的是:
season tmean cumtmean
Winter NA NA
Winter 2 2
Winter 3 2.5
Winter 4 3
Winter NA 3
Winter NA 3
Winter NA 3
Winter 8 4.25
Winter NA 4.25
Spring 7 7
Spring 8 7.5
Spring 9 8
Spring NA 8
Spring NA 8
Spring 5 7.25
Spring 3 6.4
Spring 2 5.66
Spring NA 5.66