numpy,pandas,scipy求众数速度比较

分类: python |
今天在stackoverflow看了篇文罩Numpy求众数的最快方法(numpy是没有mode函数的,前文提过可以通过bincount求)特意拿pandas,scipy加上numpy比较了一下


这篇文章还有一个封装的Mode函数,用Numpy写的,我一并列入计算,结果如下
第一个是某人自己封装的mode函数,结果不错,345us,bincount最快,26us,这么好的函数居然文章里面没人提过,scipy最慢,居然用了4.4ms,
pandas也很慢,1.4ms
结论毫无疑问就是bincount,当然原作者的mode函数不是单纯为了计算众数,综合来说计算当然Numpy最快,scipy输出的结果最多最全,速度也最慢,贴一下Mode代码
题外话,numpy没有cumax函数,昨天晚上想了很久尝试自己封装个函数不过没有成功,速度达不到要求,今天有幸看了这篇文章终于完美解决,分享一下: