Python 处理复合表头 Excel 单 Sheet 内容
使用 Python 处理带有复合表头的 Excel 单 Sheet 内容
本代码示例展示了如何使用 Python 和 Pandas 库来处理包含复合表头的 Excel 文件中的单 Sheet 内容。
import pandas as pd
# 读取 Excel 文件,指定 sheet 名称
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')
# 获取列名列表
columns = df.columns.tolist()
# 遍历列名列表,处理复合表头
new_columns = []
for col in columns:
if col.startswith('Unnamed'):
# 如果列名以'Unnamed'开头,代表该列是复合表头的子列
new_columns[-1] += ' ' + col
else:
# 否则,该列是一个新的表头
new_columns.append(col)
# 更新 DataFrame 的列名
df.columns = new_columns
# 处理数据
# ...
# 将处理后的数据保存为新的 Excel 文件
df.to_excel('new_data.xlsx', index=False)
代码解析:
- 导入 Pandas 库:
import pandas as pd - 读取 Excel 文件:
df = pd.read_excel('data.xlsx', sheet_name='Sheet1') - 获取列名列表:
columns = df.columns.tolist() - 处理复合表头:
- 遍历列名列表
columns - 如果列名以 'Unnamed' 开头,则将该列名添加到
new_columns列表中,并将其追加到前一个表头名称的末尾。 - 否则,该列名是一个新的表头,将其添加到
new_columns列表中。
- 遍历列名列表
- 更新 DataFrame 的列名:
df.columns = new_columns - 处理数据: 此部分根据您的具体需求进行编写。
- 保存处理后的数据:
df.to_excel('new_data.xlsx', index=False)
示例:
假设您的 Excel 文件 data.xlsx 中的 Sheet1 有以下复合表头:
| Unnamed: 0 | Unnamed: 1 | A | B | Unnamed: 2 | Unnamed: 3 | |---|---|---|---|---|---| | Name | Age | C | D | City | E |
通过以上代码处理后,df.columns 将变为:
['Name', 'Age', 'C', 'D', 'City', 'E']
这样,您就可以方便地使用 Pandas 库对数据进行进一步处理。
注意:
- 请确保您的 Excel 文件
data.xlsx存在于当前工作目录下。 - 您可以根据您的具体需求调整代码中的文件名和 Sheet 名称。
- 您可以将处理数据部分替换为您实际的操作代码。
原文地址: https://www.cveoy.top/t/topic/mRmO 著作权归作者所有。请勿转载和采集!