【发布时间】:2021-05-06 10:25:29
【问题描述】:
在数据集中,我需要转换为缺少value 列中的值,有两种情况:
- 如果按类型分组,则该行是最后一行
- 如果按类型分组,下一个值行是缺失值
这就解决了第一部分:
toy %>%
group_by(type) %>%
mutate(value = ifelse(row_number()==max(row_number()),NA,value))
我该如何处理第二个问题?提前致谢
toy <- data_frame(type=c(rep("A",4),rep("B",4)),year=rep(c(1:4),2),value=c(1,1,NA,1,1,1,1,1))
# A tibble: 8 x 3
type year value
<chr> <int> <dbl>
1 A 1 1
2 A 2 1
3 A 3 NA
4 A 4 1
5 B 1 1
6 B 2 1
7 B 3 1
8 B 4 1
expected <- data_frame(type=c(rep("A",4),rep("B",4)),year=rep(c(1:4),2),value=c(1,NA,NA,NA,1,1,1,NA))
type year value
<chr> <int> <dbl>
1 A 1 1
2 A 2 NA
3 A 3 NA
4 A 4 NA
5 B 1 1
6 B 2 1
7 B 3 1
8 B 4 NA
【问题讨论】:
标签: r dplyr tidyverse missing-data