对于以下数据,
custid <- c(1,1,1,2,2,5,6,8,8,8)
date <- c(20130401, 20130403, 20130504, 20130508, 20130511, 20130716,
20130719, 20130423, 20130729, 20130707)
money <- c(1, 2, 45, 3.56, 32.39, 1, 2, 3.90, 4, 8.5)
file <- data.frame(custid, date, money)
如何获得此输出?我通过计算日期来获取Trans_count值。感谢。
custid Trans_count
1 3
2 2
5 1
6 1
8 3
答案 0 :(得分:0)
您可以尝试
aggregate(cbind(Trans_count=date)~custid, file, length)
或者
library(data.table)
setDT(file)[, list(Trans_count=.N), .(custid)]
或者
library(dplyr)
file %>%
group_by(custid) %>%
summarise(Trans_count=n())
或者如果您需要矢量输出
table(file$custid)