请问有人能帮助我理解为什么使用 pandas.dataframe groupby 方法 进行以下两种操作,看起来本应该是相同的,但根据 iPython 的 Magic %timeit,会导致如此不同的时间?
%timeit somedf.groupby('someBoolColumn')['someBoolColumn'].count()
484 µs ± 9.52 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
%%timeit grp = somedf.groupby('someBoolColumn')
grp['someBoolColumn'].count()
146 µs ± 1.47 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
somedf有7200行24列。
我找不到:
为什么将对象分配给变量grp的两行代码要比其他方式快3倍以上,
这是仅限于groupby方法还是与pandas甚至Python更普遍的变量分配相关,例如。
非常感谢您提供任何启示,因为这将真正有助于处理许多更大的数据框,我需要进行多种不同参数的重复处理。