以下内容翻译自这里
pandas 是一个用于数据分析的Python库,它能让你快速处理一些探索性的工作。
本手册的目的通过一些实际的例子来让你开始使用pandas。 Pandas 的帮助文档已经相当全面了。不过,经常会有人询问 应该怎样上手。接下来我讲讲如何用pandas来处理一些真实世界中的数据,如你所料,这些数据包含各种bug和异常值。
接下来我会使用以下3个数据
- 311 calls in New York
- How many people were on Montréal's bike paths in 2012
- Montreal's weather for 2012, hourly
这些数据已经包含在本目录下。
- 简单介绍下Ipython Nodebook
展示了如何使用IPython的tab自动补齐和魔法函数 - Chapter 1: 从CSV文件中读取数据
将数据导入到pandas是相当容易的一件事,即使有编码错误也不是问题! - Chapter 2: 选择和查找数据
从pandas的DataFrame中选择数据有时候显得不那么直观,在这一部分我将解释一些基本的东西(比如怎么做切片操作,选取指定列) - Chapter 3: “哪个区抱怨噪声的人最多?”(查找数据进阶)
这部分将继续介绍如何对数据切片、切块以及过滤处理。 - Chapter 4: 用groupby和agg操作来查找人们骑自行车最多的一天是星期几
groupby/aggregate操作 是我最喜欢pandas的地方,我几乎无时不刻都在用它。这部分必读! - Chapter 5: 融合DataFrame并抓取加拿大气候数据
这部分将会探索Montreal的冬天冷不冷(答案:冷!),用pandas来做网页抓取相当有意思。 - Chapter 6: String操作:哪个月下雪最多?
pandas对string的操作非常好,它包含所有向量化的string操作。这部分内容将一系列包含Snow的字符串转换成向量化的数值来表示。 - Chapter 7: 处理脏数据
处理脏数据可不轻松,不过对于pandas来说,那就是另外一回事了~ - Chapter 8: 解析Unix下的时间戳
这个小技巧花了我两天才弄明白。。。 - Chapter 9 - 从SQL数据库中导入数据
本部分将介绍如何从 SQLite3, PostgreSQL及MySQL中导入数据到pandas
首先,你需要更新下IPython Notebook(>= 3.0) 以及 pandas(>=0.13)
用pip可以完成以上操作:
pip install ipython pandas numpy tornado pyzmq jinja2 matplotlib
编译和配置这些有时候挺繁琐的,我自己是用的 Anaconda,这个软件把几乎所有你能想到的库都包含了,并且是免费和开源的。
安装好IPython和pandas后就可以开始啦~
git clone https://github.com/ia-cas/pandas-cookbook.git
cd pandas-cookbook/cookbook
ipython notebook
执行完以上命令后,你的浏览器会自动打开一个地址为 http://localhost:8888
的页面。
尽情享受吧~
如果你发现某些地方有错误,或者是你想学习一些我在这里没有讲到的东西, 又或者是你想分享些东西,赶紧发个issue,或者发邮件,pull request都行!
- join 操作
- 使用 stack/unstack
- ???
注:我会在这里分享些自己用pandas的心得,有兴趣可以看看。
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License