用 Pandas 处理结构不佳的 Excel 文件

简介

用pandas很容易读取Excel文件并将数据转换为DataFrame。然而现实世界中的Excel文件往往构造不佳,在那些数据散落在工作表中的情况下,你可能需要定制读取数据的方式。本文将讨论如何使用pandas和openpyxl来读取这些类型的Excel文件,并干净地将数据转换为适合进一步分析的DataFrame。

问题

pandas 的 read_excel函数在读取Excel工作表方面做得很好。然而,在数据不是从A1单元格开始的连续表格的情况下,结果可能不是你所期望的那样。

比如当你尝试使用 read_excel(src_file)读取下面这个电子表格样本。

你会得到一些下面这样的东西。

这些结果包括很多 Unnamed的列、行内的标题标签以及一些我们不需要的额外列。

Pandas解决方案

对于这个数据集,最简单的解决方案是使用 read_excel()headerusecols参数。尤其是 usecols参数,对于控制你想包括的列非常有用。

如果你想继续学习这些例子,文件在github上。

 
  1. https://github.com/chris1610/pbpython/blob/master/data/shipping_tables.xlsx

下面是一个替代方法,只读取我们需要的数据。

 
  1. import pandas as pd

  2. from pathlib importPath

  3. src_file

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值