1
我正在尋找類似Select only the first rows for each unique value of a column in R 的東西,但我需要保留包含每個ID的年份的第一個值的所有行。 用其他字母表示,我需要在列出的第一年對數據集進行子集劃分,並使用個人ID。 ID可以有1,2或3年的第一年 年,並且第一年的所有行都應該保留。 例如:提取包含另一列每個唯一值的第一個值的所有行
ID <- c("54V", "54V", "54V", "54V", "56V", "56V", "56V", "59V", "59V", "59V")
yr <- c(1, 1, 1, 2, 2, 2, 3, 1, 2, 3)
test <- data.frame(ID,yr)
test
ID yr
1 54V 1
2 54V 1
3 54V 1
4 54V 2
5 56V 2
6 56V 2
7 56V 3
8 59V 1
9 59V 2
10 59V 3
預期的結果:
ID yr
1 54V 1
2 54V 1
3 54V 1
4 56V 2
5 56V 2
6 59V 1
我的數據集有很多列,我需要留住他們。 R中的R或sqldf的任何方向都很有幫助!
另一個dplyr選項:'semi_join(測試,不同的(測試,ID,.keep_all = TRUE),通過= C( 「ID」, 「年」))' –