wil*_*llk 12 python merge dataframe pandas
为什么在Pandas上合并数据帧的索引比在列上更有效(更快)?
import pandas as pd
# Dataframes share the ID column
df = pd.DataFrame({'ID': [0, 1, 2, 3, 4],
'Job': ['teacher', 'scientist', 'manager', 'teacher', 'nurse']})
df2 = pd.DataFrame({'ID': [2, 3, 4, 5, 6, 7, 8],
'Level': [12, 15, 14, 20, 21, 11, 15],
'Age': [33, 41, 42, 50, 45, 28, 32]})
Run Code Online (Sandbox Code Playgroud)
df = df.set_index('ID')
df2 = df2.set_index('ID')
Run Code Online (Sandbox Code Playgroud)
这代表了大约3.5倍的加速!(使用Pandas 0.23.0)
通过Pandas内部页面阅读它会说索引"在Cython中填充标签的位置以进行O(1)查找." 这是否意味着使用索引进行操作比使用列更有效?始终将索引用于合并等操作是最佳做法吗?
| 归档时间: |
|
| 查看次数: |
1843 次 |
| 最近记录: |