前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python科学计算之Pandas使用(三)

python科学计算之Pandas使用(三)

作者头像
zenRRan
发布2018-07-25 11:08:10
1.4K0
发布2018-07-25 11:08:10
举报

阅读大概需要5分钟

作者老齐 编辑 zenRRan 有修改 链接 http://wiki.jikexueyuan.com/project/start-learning-python/311.html

Pandas 是基于 NumPy 的一个非常好用的库,正如名字一样,人见人爱。之所以如此,就在于不论是读取、处理数据,用它都非常简单。前两天介绍了 最常见的Pandas数据类型Series的使用DataFrame的使用,今天我们将是最后一次学Pandas了,这次讲的读取csv文件

关于csv文件

csv 是一种通用的、相对简单的文件格式,在表格类型的数据中用途很广泛,很多关系型数据库都支持这种类型文件的导入导出,并且 excel 这种常用的数据表格也能和 csv 文件之间转换。

逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须象二进制数字那样被解读的数据。CSV 文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。

从上述维基百科的叙述中,重点要解读出“字段间分隔符”“最常见的是逗号或制表符”,当然,这种分隔符也可以自行制定。比如下面这个我命名为 marks.csv 的文件,就是用逗号(必须是半角的)作为分隔符:

其实,这个文件要表达的事情是(如果转化为表格形式):

普通方法读取

最简单、最直接的就是 open() 打开文件:

此方法可以,但略显麻烦。

Python 中还有一个 csv 的标准库,足可见 csv 文件的使用频繁了。

什么时候也不要忘记这种最佳学习方法。从上面结果可以看出,csv 模块提供的属性和方法。仅仅就读取本例子中的文件:

算是稍有改善。

用 Pandas 读取

如果对上面的结果都有点不满意的话,那么看看 Pandas 的效果:

看了这样的结果,你还不感觉惊讶吗?你还不喜欢上 Pandas 吗?这是多么精妙的显示。它是什么?它就是一个 DataFrame 数据。

还有另外一种方法:

如果你有足够的好奇心来研究这个名叫 DataFrame 的对象,可以这样:

一个一个浏览一下,通过名字可以直到那个方法或者属性的大概,然后就可以根据你的喜好和需要,试一试:

这几个是让你回忆一下上一节的。从 DataFrame 对象的属性和方法中找一个,再尝试:

按照竖列"Python"的值排队,结果也是很让人满意的。下面几个操作,也是常用到的,并且秉承了 Python 的一贯方法:

可以说,当你已经掌握了通过 dir() 和 help() 查看对象的方法和属性时,就已经掌握了 pandas 的用法,其实何止 pandas,其它对象都是如此。

读取其它格式数据

csv 是常用来存储数据的格式之一,此外常用的还有 MS excel 格式的文件,以及 json 和 xml 格式的数据等。它们都可以使用 pandas 来轻易读取。

.xls 或者 .xlsx

在下面的结果中寻觅一下,有没有跟 excel 有关的方法?

虽然没有类似 read_csv() 的方法(在网上查询,有的资料说有 read_xls() 方法,那时老黄历了),但是有 ExcelFile 类,于是乎:

我这里少了一个模块,看报错提示, 用pip 安装 openpyxl 模块:sudo pip install openpyxl。继续:

结果中,columns 的名字与前面 csv 结果不一样,数据部分是同样结果。从结果中可以看到,sheet1 也是一个 DataFrame 对象。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 深度学习自然语言处理 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档