编辑补充:我不认为 numba 基准是公平的,下面的注释
我正在尝试对以下用例的数值处理数据的不同方法进行基准测试:
换句话说,不需要系列和数据框的完全通用性,尽管它们被包含在 b/c 中,但它们仍然是封装数据的便捷方式,并且经常有预处理或后处理确实需要熊猫的通用性numpy 数组。
问题:基于此用例,以下基准是否合适,如果不合适,我该如何改进它们?
# importing pandas, numpy, Series, DataFrame in standard way
from numba import jit
nobs = 10000
nlines = 100
def proc_df():
df = DataFrame({ 'x': np.random.randn(nobs),
'y': np.random.randn(nobs) })
for i in range(nlines):
df['z'] = df.x + df.y
return df.z
def proc_ser():
x = Series(np.random.randn(nobs))
y = Series(np.random.randn(nobs))
for i in range(nlines):
z = x + y
return z …Run Code Online (Sandbox Code Playgroud)