假设您有一个这样的数组:
[
{'id' : 1, 'closed' : 1 },
{'id' : 2, 'closed' : 1 },
{'id' : 5, 'closed' : 1 },
{'id' : 7, 'closed' : 0 },
{'id' : 8, 'closed' : 0 },
{'id' : 9, 'closed' : 1 }
]
我想总结这个数据集(不使用 SQL!),并为由行 '关闭'
。导致这样的输出:
[
{'id__min' : 1, 'id__max' : 5, 'closed' : 1},
{'id__min' : 7, 'id__max' : 8, 'closed' : 0},
{'id__min' : 9, 'id__max' : 9, 'closed' : 1}
]
这只是我想做的事情的一个例子。我想实现一些类似于 python 的 itertools.groupby
提供的东西,但作为一个更全面一点。 (想定义我自己的聚合函数)。
如果可能的话,我正在寻找指针、伪代码,甚至是任何 PHP、Python 或 Javascript 代码。
谢谢!
最佳答案
itertools.groupby()
的 key
参数允许您传递自己的聚合函数。
关于php - 在集合上使用聚合函数实现类似 SQL 的分组依据的算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4392336/