You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

读取含合并单元格的Excel时,如何取消合并并生成标准DataFrame?

取消Excel合并单元格并生成标准DataFrame

问题分析

你读取的Excel文件存在合并单元格,导致pandas读取后Unnamed: 0列出现NaN——合并单元格仅在第一行保留值,后续行自动填充缺失值。只需填充这些缺失值,就能得到标准结构的DataFrame。

解决方案代码

import pandas as pd

# 读取Excel文件(你的原有代码)
df = pd.read_excel(folder + 'abcd.xlsx', sheet_name="Sheet1") 

# 向前填充合并单元格导致的缺失值
df['Unnamed: 0'] = df['Unnamed: 0'].ffill()

# 重命名列名以提升可读性(可根据实际需求修改)
df.rename(columns={
    'Unnamed: 0': '区域',
    'Unnamed: 1': '房产类型',
    'T12006': 'T1-2006',
    'T22006': 'T2-2006',
    'T32006': 'T3-2006'
}, inplace=True)

# 输出处理后的结果
print(df)

代码说明

  • ffill():全称forward fill,会将上一行的有效值向下填充到当前行的NaN位置,完美还原合并单元格的原始逻辑(合并单元格的内容属于所有行)。
  • 重命名列名:将默认的Unnamed列名替换为有业务意义的名称,让DataFrame更易维护。

处理后效果

区域        房产类型  T1-2006    T2-2006    T3-2006
0  Casablanca       Global      100   97.27252   93.464538
1  Casablanca  Résidentiel      100  95.883979   92.414063
2  Casablanca  Appartement      100  95.425152   91.674379
3  Casablanca      Maison      100  101.463607  104.039383
4  Casablanca       Villa      100  102.45132  101.996932

内容的提问来源于stack exchange,提问作者bravopapa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 20:31:15