python:如何拆分按第一列分组的excel文件

2024-04-29 14:54:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个表,需要拆分成多个文件,按列1-serial中的值分组。在

+--------+--------+-------+
| serial |  name  | price |  
+--------+--------+-------+
| 100-a  | rdl    |   123 |  
| 100-b  | gm1    |  -120 |  
| 100-b  | gm1    |   123 |  
| 180r   | xxom   |    12 |  
| 182d   | data11 | 11.50 |  
+--------+--------+-------+

输出如下:

^{pr2}$

打开100-b.xls包含以下内容:

+--------+------+-------+
| serial | name | price |  
+--------+------+-------+
| 100-b  | gm1  |  -120 |  
| 100-b  | gm1  |   123 |  
+--------+------+-------+

我尝试使用Pandas来定义数据帧,方法是使用以下代码:

import pandas as pd
#from itertools import groupby

df = pd.read_excel('myExcelFile.xlsx')

我成功地得到了数据帧,但我不知道下一步该怎么做。我试着遵循这个similar question on Stackoverflow,但是场景有点不同。下一步该怎么做?在


Tags: 文件方法nameimportpandasserialxlsprice
1条回答
网友
1楼 · 发布于 2024-04-29 14:54:59

这不是groupby而是一个过滤器。在

您需要遵循两个步骤:

  1. 在excel文件中生成所需的数据
  2. 将数据框另存为excel。在

像这样的东西应该能起作用-

for x in list(df.serial.unique()) :
    df[df.serial == x].to_excel("{}.xlsx".format(x))

相关问题 更多 >