【发布时间】:2017-12-22 02:56:50
【问题描述】:
我有一个DataFrame,需要根据特定列进行分段并写入不同的excel文件...
df = pd.DataFrame(np.arange(28).reshape((7, 4)))
df['group'] = ['a', 'a', 'c', 'c', 'd', 'd', 'e']
0 1 2 3 group
0 0 1 2 3 a
1 4 5 6 7 a
2 8 9 10 11 c
3 12 13 14 15 c
4 16 17 18 19 d
5 20 21 22 23 d
6 24 25 26 27 e
基于group列我需要拆分并写入xlsx文件...我目前使用
for group in list(df['group'].unique()):
group_df = df[df['group'] == group]
group_df.to_excel(some_path)
有没有办法我可以同时执行此操作,而不是使用 for 循环??
【问题讨论】:
-
我不确定并行执行会更快,除非您正在写入 SSD 磁盘或适当的存储系统或分布式文件系统...
-
不一定要使用并发来加速,但可以通过使用
.groupby()方法来加速操作...for name, group in df.groupby('group'):
标签: excel python-3.x pandas save