pandas数据分析40——读取 excel 合并单元格的表头

这篇具有很好参考价值的文章主要介绍了pandas数据分析40——读取 excel 合并单元格的表头。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

案例背景

真的很容易疯....上班的单位的表格都是不同的人做的,所以就会出现各种合并单元格的情况,要知道我们用pandas读取数据最怕合并单元格了,因为没规律...可能前几列没合并,后面几列又合并了....而且pandas对于索引很严格,这种合并单元读取进来就是空的,还怎么查找数据......例如:

pandas数据分析40——读取 excel 合并单元格的表头,pandas数据分析,pandas,数据分析,excel,自动化办公

 还有这种:
pandas数据分析40——读取 excel 合并单元格的表头,pandas数据分析,pandas,数据分析,excel,自动化办公

 读取的时候....真的很无语。虽然手工做的表头方便人看,但真的不方便代码来取数。

下面我们来看看怎么自动化读取这种多合并表格的数据,并规范表头。就用这个资产的样例


代码实现

读取数据,前2行都是标题没用跳过,然后header=0,1表示2行作为多层索引。

name='资产类别统计表2023.7.xlsx'

df=pd.read_excel(f'{name}',skiprows=2,header=[0,1],converters={'类别编号': str})
df.head(3)

pandas数据分析40——读取 excel 合并单元格的表头,pandas数据分析,pandas,数据分析,excel,自动化办公

 

可以看到有‘unnamed’这种合并单元出现的空值的情况。 

我们可以打印查看一下行索引名称:

df.columns

pandas数据分析40——读取 excel 合并单元格的表头,pandas数据分析,pandas,数据分析,excel,自动化办公

 像这种只有部分下面缺失的,可以直接用上面的第一层索引填充第二层索引,让它还是两层索引,然后继续做多层索引数据框。

cols = df.columns.map(lambda x: [x[0]if 'Unnamed' in i else i for i in x])
multi_cols = pd.MultiIndex.from_arrays([list(col) for col in zip(*cols)])
df.columns=multi_cols
df.head(2)

pandas数据分析40——读取 excel 合并单元格的表头,pandas数据分析,pandas,数据分析,excel,自动化办公

 这样就是处理好, 然后按照多层索引的方法去进行取数。

若多层索引不熟悉,只想变成正常 的二维数据框,那么就这样:

cols = df.columns.map(lambda x: ''.join('' if 'Unnamed' in i else i for i in x))
cols

pandas数据分析40——读取 excel 合并单元格的表头,pandas数据分析,pandas,数据分析,excel,自动化办公

 把第一层和第二层的名称都进行合并,然后赋值:
 

df.columns=cols
df.head(2)

pandas数据分析40——读取 excel 合并单元格的表头,pandas数据分析,pandas,数据分析,excel,自动化办公

 这样就变成了单层数据框,完成!

后面就正常的pandas索引进行取数修改筛选计算等工作了。文章来源地址https://www.toymoban.com/news/detail-660412.html

到了这里,关于pandas数据分析40——读取 excel 合并单元格的表头的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python数据分析】利用Python将多个EXCEL表格合并为一个EXCEL表格

            如何将EXCEL的多个表格合并成一个表格呢?比如每月销售额是一个单独的表格,我想把它们合并成一个表格,今天就与大家分享如何利用Python数据分析3分钟搞定,不管你要合并多少个文件,代码总是那么几行。不多说了,上案例。          现在有3个月的销售额,需

    2023年04月24日
    浏览(34)
  • 解决pandas读取excel单元格出错_x0000_

    如果已经读出来了这个问题,那么就只能使用 replace 替换了: 这是因为pandas解析excel的 .xlsx 文件时,使用的引擎是openpyxl,而有些情况下因为excel文件修修改改,导致有些编码格式被遗留在了excel单元格中,会在使用openpyxl时出现意外

    2024年02月11日
    浏览(37)
  • 40 | NBA球员信息数据分析

    本文将以NBA球员薪资数据并进行数据分析为例,展示如何获取网络上的数据资源,并通过数据处理和可视化方法揭示有关NBA球员薪资的信息。我们将使用提供的URL(www.espn.com/nba/salaries)来抓取NBA球员薪资数据,然后运用数据分析工具,对数据进行清洗、整理和计算,最终通过

    2024年02月12日
    浏览(26)
  • 用Python的pandas读取excel文件中的数据

    hello呀!各位铁子们大家好呀,今天呢来和大家聊一聊用Python的pandas读取excel文件中的数据。 使用pandas的 read_excel() 方法,可通过文件路径直接读取。注意到,在一个excel文件中有多个sheet,因此,对excel文件的读取实际上是读取指定文件、并同时指定sheet下的数据。可以一次读

    2024年02月02日
    浏览(33)
  • 数据分析 — Pandas 数据处理

    Pandas (Python Data Analysis Library)是一个基于 NumPy 的 数据分析工具 ,专为解决数据分析任务而创建。它汇集了大量库和一些标准的数据模型,可以更高效地操作大型数据集。 数据结构: Pandas 提供了两种主要的数据结构,即 Series 和 DataFrame ,用于处理 一维和二维 数据。 标签

    2024年02月22日
    浏览(37)
  • pandas数据分析之数据绘图

    一图胜千言,将信息可视化(绘图)是数据分析中最重要的工作之一。它除了让人们对数据更加直观以外,还可以帮助我们找出异常值、必要的数据转换、得出有关模型的想法等等。pandas 在数据分析、数据可视化方面有着较为广泛的应用。本文将通过实例介绍pandas的数据绘图

    2024年02月10日
    浏览(26)
  • C#实现Excel合并单元格数据导入数据集

    目录 功能需求 Excel与DataSet的映射关系 范例运行环境 Excel DCOM 配置 设计实现 组件库引入 ​方法设计 返回值  参数设计 打开数据源并计算Sheets 拆分合并的单元格 创建DataTable 将单元格数据写入DataTable 总结 将Excel里的worksheet表格导入到DataSet里,是项目应用里常用的一种操作。

    2024年02月02日
    浏览(34)
  • pandas读取Excel核心源码剖析,面向过程仿openpyxl源码实现Excel数据加载

    📢作者: 小小明-代码实体 📢博客主页:https://blog.csdn.net/as604049322 📢欢迎点赞 👍 收藏 ⭐留言 📝 欢迎讨论! 今天我们将研究pandas如何使用openpyxl引擎读取xlsx格式的Excel的数据,并考虑以面向过程的形式简单的自己实现一下。 截止目前本人所使用的pandas和openpyxl版本为:

    2023年04月19日
    浏览(46)
  • 【数据分析】pandas (三)

    在这里,我们将讨论pandas数据结构中常见的许多基本功能 让我们创建一些示例对象: index = pd.date_range(“1/1/2000”, periods=8) s = pd.Series(np.random.randn(5), index=[“a”, “b”, “c”, “d”, “e”]). df = pd.DataFrame(np.random.randn(8, 3), index=index, columns=[“A”, “B”, “C”]) 要查看一个Seri

    2024年02月13日
    浏览(27)
  • 【数据分析 - 基础入门之pandas篇③】- pandas数据结构——DataFrame

    大家好!我是一朵向阳花(花花花)🍭,本期跟大家分享的知识是 pandas 数据结构——DataFrame。 作者的【 Python 数据分析】专栏正在火热更新中🔥,如果本文对您有帮助,欢迎大家点赞 + 评论 + 收藏 ! 每日金句分享: 慢慢来,谁还没有一个努力的过程。』—— pony「网易云

    2024年02月16日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包