R:在ddply中获取子集的长度

时间:2012-05-11 18:29:36

标签: r

所以我有一个包含以下列的数据集:test_group,person_id,gross,purchases。这基本上是一个人员列表,他们花了多少钱,他们购买了多少次,以及他们在哪个群体。

我正在使用以下ddply代码来获取一些摘要统计信息:

mean_rpu <- ddply(data, .(test_group), summarise, total_rpu=sum(gross),
    total_users=length(person_id), total_purchasers=length(subset(data,  
    purchases > 0)$person_id), mean_rpu=mean(gross), sd_rpu=sd(gross))

我遇到的问题是“total_purchasers”摘要。我正在尝试计算每个test_group中购买者的数量。当前代码仅显示整个数据集中的total_purchasers,而不是test_group因子的repsective。我可以用这个优化吗?

我很感激帮助!

1 个答案:

答案 0 :(得分:10)

如果没有一个可重复的例子,很难肯定地说,但也许你想要这个:

total_purchasers=length(person_id[purchases>0])