Я сравниваю производительность Eval, Query и ndarray, и мне нужно нарисовать линейный график, используя магическую функцию timeit, как показано ниже:
import pandas as pd
np.random.seed(125)
N = 100000
df = pd.DataFrame({'Arc':np.random.randint(10, size=N)})
print('===Vectorization with NumPy arrays===')
%timeit df[df.A.values > 5]
print("===Query===")
%timeit df.query('Arc > 10')
print("===Eval===")
%timeit df[df.eval('Arc > 10')]
Ожидаемый график:
источник: Google
