我有这张桌子:
> prueba
rutcli elegidosi llamado pago
1 4863 NA 0 0
2 7605 NA 1 1
3 10669 NA 1 1
4 10669 NA 1 1
5 11980 NA 1 1
6 17045 NA 0 1
7 31259 NA 1 1
8 31259 NA 1 1
9 40547 NA 1 1
10 66455 NA 1 1
我需要按客户分组并获得一些指标:
library(dplyr)
by_cli<-group_by(prueba, rutcli,add = TRUE)
summarise(by_cli,
llamado=max(llamado, na.rm=TRUE),
q_EDI=sum(llamado, na.rm=TRUE), reg=length(llamado))
Source: local data frame [8 x 4]
结果是:
rutcli llamado q_EDI reg
1 4863 0 0 1
2 7605 1 1 1
3 10669 1 1 1
4 11980 1 1 1
5 17045 0 0 1
6 31259 1 1 1
7 40547 1 1 1
8 66455 1 1 1
所以,我没有得到总和(客户端 10669 和 31259 是两次)。
我还尝试了以下方法并得到了相同的结果:
prueba %>%
group_by(rutcli) %>%
summarise(llamado=max(llamado, na.rm=TRUE),q_EDI=sum(llamado, na.rm=TRUE),
reg=length(llamado))