【发布时间】:2023-01-20 19:00:14
【问题描述】:
我有以下数据结构:
df <- data.frame(year = c(1980, 1981, 1982, 1983, 1984, 1980, 1981, 1982, 1983, 1980, 1981, 1982, 1983, 1984),
id = c(1,1,1,1,1,2,2,2,2,3,3,3,3,3),
value = c(4,3,5,8,9,5,1,5,6,4,5,6,3,2))
该数据库包含 1980 年至 1984 年每个人(ID = 1、2 和 3)的观察结果。但是,一个人(id = 2)缺少一年的观察结果。我想识别那个人并将其从我的数据框中删除。
所以预期的输出如下:
year id value
1 1980 1 4
2 1981 1 3
3 1982 1 5
4 1983 1 8
5 1984 1 9
6 1980 3 4
7 1981 3 5
8 1982 3 6
9 1983 3 3
10 1984 3 2
我首先计算每个 ID 的观察值,但随后我不知道如何告诉 R 选择具有 5 个观察值的那些 ID 行(5 = 研究期间的最大年数):
summary <- df %>%
group_by(id) %>%
summarise(headcount = n())
【问题讨论】: