【发布时间】:2017-01-16 08:23:29
【问题描述】:
如何在不使用 groupby 函数的情况下比较 col a 分组中 col b 中第一行和 col b 中最后一行的值?因为 groupby 函数对于大型数据集来说非常慢。
a = [1,1,1,1,1,1,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3]
b = [1,0,0,0,0,0,7,8,0,0,0,0,0,4,1,0,0,0,0,0,1]
返回两个列表:一个具有来自 col a 的组名,其中最后一个值大于第一个值,等等。
larger_or_equal = [1,3]
smaller = [2]
【问题讨论】:
-
如果我理解了这个问题,我知道我有一个答案。你能做更多的工作来解释你在说什么吗?
-
你试过
groupby(sort=False)吗?这可以加快处理大型数据集的速度。 -
@piRSquared,
1和3组被选中,因为组中的最后一个元素大于或等于第一个元素。 -
Bryan,如果你能分享一下,我很想看看这三种解决方案之间的性能比较。