数据示例:
library(dplyr)
df1 <- data.frame(
ID = c(1,2,2,3,4,4,5,6,6,8,9,33,32,33,33,22,22,22,23,23),
product= c("A", "B", "B", "A", "C", "D", "C", "A", "F", "A",
"C", "P", "R", "Q", "W", "A", "B","B", "D", "D"))
问题:
1)如果“ ID”和“产品”特征在同一“ ID”中具有不同的“产品”类型,则排除这些观察结果。例如,“ ID”:4、4和“产品”:C,D
2)如果“ ID”和“产品”功能具有相同的重复值,则保留这些观察值。例如,“ ID”:2、2和“产品”:B,B。
3)如果“ ID”和“产品”只有一个观察值,则将该观察值保留在数据框中。例如,“ ID”:A和“产品”:1.
我尝试过的事情:
df1 %>%
group_by(ID, product) %>%
filter(n() > 1)
预期结果
ID product
1 A
2 B
2 B
3 A
5 C
8 A
9 C
32 R
23 D
23 D