[英]How to get distinct count in aggregate
我只是想获得distinct_count聚合。
我有以下代码:
data_frame = data_frame.group_by(:job_id)
.aggregate(job_id: :max, bid_id: :count)
我想要这样的东西:
data_frame = data_frame.group_by(:job_id)
.aggregate(job_id: :max, bid_id: :distinct_count)
我知道还没有像这样实施的统计方法,还有其他方法吗?
我找到了一种方法来做到这一点:
data_frame = data_frame.group_by(:job_id)
.aggregate(job_id: :max,
bid_id: lambda{ |x| x.uniq.size })
也许更好:
data_frame = data_frame.group_by(:job_id)
.aggregate(job_id: :max,
bid_id: ->(x) { x.uniq.size })
我不确定这是否正确,但似乎可行。
这个熊猫解决方案对我有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.