2017-10-05 112 views
0

我正在尝试整合我的数据框中的重复行并计算与重复对应的其他行。合并数据帧计数

Consolidate duplicate rows

这个线程是非常有益的,但是当我在ddply方法与次数,而不是试图总和的功能我得到的错误:长度(行)== 1是不正确的。

ACCT_NUM    DC_NUM INVOICE_NUM  DATE DC_PROD_ NUM DELIVERED_QUANTITY               
640324  CCF575-000712116   15283 4-May-15  154609 1  29147104 
640324  CCF575-000712116   15283 4-May-15  423580 1  29147104 
640324  CCF575-000712116   15283 4-May-15  538010 1  29147104 
640324  CCF575-000712116   15283 4-May-15  991900 1  29147104 
640324  CCF575-000712116   15283 4-May-15  991940 1  29147104 
640324  CCF575-000712116   15283 4-May-15  991960 1  29147104 
640324  CCF575-000712116   29289 7-May-15  423580 1  29181744 
+0

尝试'length',而不是'count'。 'plyr :: count'被构建用于整个数据框,而不仅仅是一列。 – Gregor

+0

示例数据?期望的输出? – User632716

+0

请您考虑这些建议[问题](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) – shea

回答

0

我认为你正在寻找dplyr::n()而非count功能。

有了这些数据:

df <- data.frame(A = c("A","A","B","B") 
        , B = c("C", "C", "D", "D")) 

你可以抓住这样的计数:

df %>% 
    group_by(A, B) %>% 
    summarise(Count = n()) 

返回:

 A  B Count 
    <fctr> <fctr> <int> 
1  A  C  2 
2  B  D  2