官方推荐:6种Pandas读取Excel的方法,太方便了~
2024-06-22 0
大家好,我是开发者万峰。
很多朋友使用Python中的Pandas库来处理Excel数据数据处理宏观上分为三个阶段:数据读取、数据处理和数据输出。
对于大多数新手来说,他们都会卡在数据读取这一步。
今天我们就一起学习Pandas推荐的6种Excel阅读方法。
本文分为3个部分:下载pandas并创建Excel文件、解读源代码以及读取Excel的6种方法。
如果您是经验丰富的Python用户,可以直接跳至第3部分。
如果您是Python新手或Pandas新手,建议您从第1部分开始。
以下所有代码可以通过左右滑动←或右→查看,也可以直接复制粘贴。
一、准备工作
首先,您需要下载最新版本的Pandas库。这样就可以使用Pandas了,这不难理解吧?
其次,您需要有一个类似于本文中的Excel文件。为确保大家按照本文的方式进行操作,建议您使用与本文相同的Excel文件。
如何下载熊猫。如何获取Excel?我们都是用一行命令来自动化,毕竟我们是一个自动化办公社区,如果这些操作不能自动化,那也不算什么。
如果直接运行下面这行代码,将会创建一个和本文一模一样的Excel文件~
1行命令设置:pandas,版本:140
在你的PC上执行以下命令自动安装pandas~
pipinstall-ihttps://pypitunatsinghuaeducn/simplepython-office-U
1行命令生成Excel
您无需到处下载Excel文件。之前我们不是介绍过一个功能:1行代码创建一个带有模拟数据的Excel文件。
以后我们每次处理Excel案例和演示都会用到这个自动生成的方法。当然,你也可以手动编辑一个,但是如果我们以后想学习如何处理一个有10万行的Excel文件怎么办??无论是手动创建还是从百度云下载,都是一个极其缓慢的过程。
但使用下面的生成方法,模拟一个10万条数据的Excel文件只需要一点时间。你一定要尝试一下~你会发现新世界。
进口办公室
officeexcelfake2excel(列['姓名','公司前缀','工作'],rows5)
在你的PyCharm中,执行上面这行代码,创建一个如下图的Excel文件,和本文一模一样~
2pandan源代码说什么?
其实学习Pandas非常简单。无需在网上搜索。所有代码功能均由创始人和开发人员编写在源代码中。
如何找到pandas源代码?
下载完pandas后,我们打开pandas源码,看看pandas推荐了哪些阅读方式。pandas源码路径:D:你的Python安装目录Libsite-packagesspandas
打开源码后,pandas文件夹下有多个文件夹结构,如下图所示。我们要读取的Excel函数位于pandasioexcelbasepy文件的第290行和第350行之间。如下所示
现在我们找到了这个源代码,问题就变成了,源代码告诉我们什么?
36种阅读Excel的方法
接下来,我们将根据上面提供的源代码,一一分析这6种擅长阅读的方法。
1读取指定索引列
这种读取方法适用于Excel中的数据本身就有代表序列号的列的情况。
pdreadexcel('fake2excelxlsx',indexcol0)
#使用indexcol0指定第1列为索引列。
结果如下所示:
列名不对齐,不是因为运行代码有问题,而是因为该列被视为索引列。
这种方法不符合我们文件的要求,所以我们可以进行如下修改:不指定索引列。
代码及结果如下:
pdreadexcel('fake2excelxlsx',indexcolNone)
2指定页面读取
看到名字就知道意思了。
pdreadexcel(打开('fake2excelxlsx','rb'),工作表名称'Sheet2')
#使用sheetname0指定读取sheet2的内容。
我们在原表中添加sheet2,结果如下图:
在这种情况下,sheet1的内容将不会被读取。
3取消读取标题
读取没有自己的列名的数据。
pdreadexcel('fake2excelxlsx',indexcolNone,headerNone)
#使用headerNone停止读取标题。
结果如下所示:
这种情况适用于没有列名的原始Excel表格。
当我们的文件中有列名时,列名将被视为数据。
4指定阅读格式
这种类型适合需要更高数据处理精度或更快速度的高级玩家。
pdreadexcel('fake2excelxlsx',indexcol0,dtype{'age':float})
#使用dtype指定特定列的数据类型。
结果如下所示:
我们添加了一列:age,最初是一个整数,但是指定了float类型后,就被读入了一本小本本。
这种阅读方式比较适合对数据有特殊要求的场合,比如金融领域。
5缺少自定义值
这个使用场景是什么?例如,在收集信息时,如果你发现某人填写的年龄是负数,你会自动清除他的年龄并让他重新填写。
pdreadexcel('fake2excelxlsx',indexcolNone,navalues{'name':'庞强'})
#使用标称值来定义自己不显示的数据
结果如下所示:
我们的表中有一个人叫:庞强我们不想公布这个人的名字。
所以我们用数值来指定:name列是庞强的名字,设置为空。在pandas中,空值会用NaN来表示。
6在Excel中处理注释行
不仅Python可以注释,Excel也可以注释。很多人都没用过,用过的朋友请在评论区告诉我为什么用Excel写笔记~?
pandas提供了处理Excel注释行的方法。
pdreadexcel('fake2excelxlsx',indexcolNone,comment'#')
结果如下所示:
4写在最后
作为一名Python程序员,通常需要阅读源码,了解代码背后的原理和逻辑。
最近经常使用pandas,pandas也可以处理excel,所以近期会继续更新一些关于使用pandas的文章。
接下来你想读什么?请在评论部分告诉我。
如何生成一亿个手机号码?在Python中生成随机数的22种方法
某宝的动漫头像要50元吗?1行Python代码实现,不再交智商税
新手必读:python办公自动化、开源项目目录结构
我想改变我的职业生涯,成为一名程序员,我可以通过学习编程课程找到工作吗?我可以自学吗?
本站文章均由用户上传或转载而来,该文章内容本站无法检测是否存在侵权,如果本文存在侵权,请联系邮箱:2287318951@qq.com告知,本站在7天内对其进行处理。