16
2020-08
文科生带你学Python|Pandas读取数据
距离上一次更新时间有点久,原因么,被大佬的代码打击到了,于是回去自闭充了一波电……
LEARN MORE
图片来自网络,如侵删
向万能的pandas低头
之前的教程讲了什么是第三方库和开源软件的基础知识,由于时间比较久了,大家可以点下面链接回顾一下:
基础知识回顾
接下来我们就从一个非常常用且万能的第三方库:pandas开始吧~
对于绝大多数非专业码农来说,处理数据和办公自动化就是核心需求,所以从pandas上手是一个非常不错的选择。
我在之前的文章中有强调过,学习开源软件,阅读文档是非常非常重要的,因为我自己在这个方面吃过亏,过于相信网上所谓的教程而忽视了文档的阅读导致走了一些弯路(具体来说就是教程已经过时了)。下面是pandas官方文档的链接:https://pandas.pydata.org/pandas-docs/stable/,大家没事的时候可以多看看,阅读英文文档有障碍的可以考虑看中文文档,不过我建议还是看英文比较好,因为中文文档的翻译总是有些地方不太对劲。
pandas官方文档
(User guide是我们一般意义上所说的文档,Getting started可以看,其他两个文档偏开发人员,我们业余选手就没必要看了)
从import开始
第三方库的使用是从import 开始的,想用哪个库就用import 库名开始,比如我们想用pandas,就用import pands作为第一行代码。
后续如果我们想要使用pandas中内置的函数和方法,就用pandas.函数名进行使用就可以了。由于pandas名字太长了,每次都输入全称非常麻烦,就好像我们在写文章的时候经常写:《关于XXXX的XXX的办法》(以下简称办法)一样。我们习惯上把pandas缩写为pd,这样后续调用的时候会省很多事,“以下简称”这样的文字在代码中用as表示(说句题外话,mysql中也是用as表示缩写哦,以及as是可以省略的)。在实际使用的过程中,我们一般这么写:
当然,你也可以缩写成其他的,不缩写的pd。不过还是建议按照大家的习惯用法来哈~
pd.read_一切
pandas读取数据还是非常容易记住:pd.read_一切。下面这个就是pandas支持读取的文件类型,你能想到的,pandas都可以,并且读取的代码都很好记忆,比如:
读取csv就是pd.read_csv(路径名),读取excel文件就是pd.read_excel(路径名),读取txt文件的就是pd.read_table(路径名),读取json文件就是pd.read_json(路径名)……
下图以读取excel表为例,展示一下读取excel文件的过程:
如上图所示,读取一个excel文件,因为文件的路径名中包含中文,所以需要在路径名之前加一个r进行转义,如果路径名中全是英文,并且是‘//’形式的就不需要在前面加r进行转义。此外,建议路径中不要有中文字符,用r转义有可能出错。
read_excel参数
读取excel文件有很多参数可以用,用好了这些参数可以解决很多问题。
使用help(pd.read_excel)可以查看read_excel对应的参数和使用方法及示例。
pd.read_excel的参数列表如下,虽然在上面的图示中我只用了io(路径)一个参数。
sheet_name参数可以指定sheet的名称,在读取多sheet文件的时候非常适用。
header参数可以指定表头是哪一行,对于开头有空行的文件和表头为多行的文件非常适用。
此外,还可以用index_col参数指定只读取某几列,用dtype指定数据类型……
具体参数的使用给大家推荐两个教程:
文字版
视频版:https://www.bilibili.com/video/BV1Ni4y1t7tf【这个up主的视频超赞】