小编Dan*_*l R的帖子

pandas 性能:列选择

我今天观察到,选择两列或更多列数据框可能比只选择一列慢得多。

如果我使用 loc 或 iloc 选择多个列,并使用 list 传递列名或索引,则与使用 iloc 选择单列或多列相比,性能下降 100 倍(但未通过列表)

例子:

df = pd.DataFrame(np.random.randn(10**7,10), columns=list('abcdefghij'))
Run Code Online (Sandbox Code Playgroud)

一栏选择:

%%timeit -n 100
df['b']
3.17 µs ± 147 ns per loop (mean ± std. dev. of 7 runs, 100 loops each)

%%timeit -n 100
df.iloc[:,1]
66.7 µs ± 5.95 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

%%timeit -n 100
df.loc[:,'b']
44.2 µs ± 10.5 µs per loop (mean ± std. dev. of 7 runs, 100 loops …
Run Code Online (Sandbox Code Playgroud)

pandas

5
推荐指数
1
解决办法
2140
查看次数

标签 统计

pandas ×1