在notebook 或 终端下进行测试:
In [1]:
import pandas as pd import numpy as np
1.list
In [2]:
l = list(range(100000))
In [3]:
%timeit l+l
730 µs ± 31.2 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
2.ndarray
In [4]:
arr = np.arange(100000)
In [5]:
%timeit arr+arr
38.2 µs ± 156 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)
3.Series1
In [6]:
se = pd.Series(np.arange(100000))
In [8]:
%timeit se+se
168 µs ± 2.73 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
3.Series2
In [11]:
se = pd.Series(range(100000))
In [12]:
%timeit se+se
161 µs ± 1.79 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
4.DataFrame
In [9]:
df = pd.DataFrame(np.arange(100000))
In [10]:
%timeit df+df
850 µs ± 15.3 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
结论:
就数学运算而言,运算速度: ndarray > Series > list > DataFrame