我有data frame
我想要选择具有重复值的两行。在下面的示例中,我想要一个新的数据帧或两个单独的数据帧,分别有19和32的两个记录。
a <- c(8, 18, 19, 19, 20, 30, 32, 32, 58)
b <- c(1950, 1965, 1971, 1981, 1999, 1969, 1994, 1985)
df <- data.frame(a,b)
df
a b
1 8 1950
2 18 1965
3 19 1971
4 19 1981
5 20 1999
6 30 1969
7 32 1994
8 32 1999
9 58 1985
我尝试过使用df[duplicated(df$a), ]
,但这只会提取重复的第二条记录,我想要这两条记录。最终目标是在19和32的两个记录之间减去第二列中的年份。
答案 0 :(得分:1)
我们可以使用
df[duplicated(df$a)|duplicated(df$a, fromLast=TRUE),]
# a b
#3 19 1971
#4 19 1981
#7 32 1994
#8 32 1999