6

我有一个包含许多列的数据框,包括QuarterCustomerID。在此,我想确定 和 的独特Quarter组合CustomerID

例如:

masterdf <- read.csv(text = "
    Quarter,  CustomerID, ProductID
    2009 Q1,    1234,     1
    2009 Q1,    1234,     2
    2009 Q2,    1324,     3
    2009 Q3,    1234,     4
    2009 Q3,    1234,     5
    2009 Q3,    8764,     6
    2009 Q4,    5432,     7")

我想要的是:

FilterQuarter     UniqueCustomerID
2009 Q1           1234
2009 Q2           1324
2009 Q3           8764
2009 Q3           1234
2009 Q4           5432

如何在 R 中做到这一点?我尝试unique了功能,但它没有按我的意愿工作。

4

2 回答 2

10

OP 下​​的长评论越来越难以理解。正如@RomanLustrikduplicated指出的那样,您正在寻找。像这样使用它来子集您的原始文件...data.frame

masterdf[ ! duplicated( masterdf[ c("Quarter" , "CustomerID") ] ) , ]
#  Quarter CustomerID
#1 2009 Q1       1234
#3 2009 Q2       1324
#4 2009 Q3       1234
#6 2009 Q3       8764
#7 2009 Q4       5432
于 2013-08-22T07:36:24.920 回答
2

另一种简单的方法是使用SQL来自 R 的查询,检查下面的代码。这假设 masterdf 是原始文件的名称......

library(sqldf)
sqldf("select Quarter, CustomerID from masterdf group by 1,2")
于 2016-04-15T06:06:17.127 回答