我有一个数据集,其中包含变量“ customerID ”和“ Country ”。当然,有几个实例具有相同的customerID,因为它是一个包含零售商店的年度数据的数据集。我想按国家/地区计算客户数量,但问题是我不知道如何仅对每个customerID一次“增加”计数器。我认为我必须同时使用和函数,但是我不知道如何使用。table()
unique()
数据集看起来像这样
InvoiceNo StockCode CustomerID Country
1 536365 70897a 17850 United Kingdom
2 536365 71053 17850 United Kingdom
3 536365 84406B 17850 United Kingdom
4 536366 22752 18652 United Kingdom
5 536367 66543 18652 United Kingdom
6 536368 71053 17556 USA
我想有一个表(或数据框)这样的回报
United Kingdom USA
2 1
这是使用table
和子集的基本R方法:
with(unique(df[c("CustomerID", "Country")]), table(Country))
Country
United_Kingdom USA
2 1
要获取一个data.frame,将其包装为data.frame
。
data.frame(with(unique(df[c("CustomerID", "Country")]), table(Country)))
Country Freq
1 United_Kingdom 2
2 USA 1
数据
df <- read.table(header=TRUE, text="InvoiceNo StockCode CustomerID Country
536365 70897a 17850 United_Kingdom
536365 71053 17850 United_Kingdom
536365 84406B 17850 United_Kingdom
536366 22752 18652 United_Kingdom
536367 66543 18652 United_Kingdom
536368 71053 17556 USA")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句