我最终想构建一个嵌入式数组表达式评估器(类固醇上的Numexpr)来做这样的事情。现在,我们正在处理Python的局限性- 如果您实现了Cython聚合器,(x * y).sum()
则可以将其与groupby连接,但是理想情况下,您可以将Python表达式编写为函数:
def weight_sum(x, y):
return (x * y).sum()
这将得到“ JIT编译”,并且大约和groupby(…)。sum()一样快。我描述的是一个非常重要的项目(每个月)。如果有与BSD兼容的APL实现,我也许可以更快地完成上述操作(只是想一想)。