用传统的电子表格来处理数据不仅效率低下,而且无法处理某些格式的数据,对于混乱或庞大的数据集更是束手无策。本书将教你如何利用语法简单、容易上手的Python轻松处理数据。作者通过循序渐进的练习,详细介绍如何有效地获取、清洗、分析与呈现数据,如何将数据处理过程自动化,如何安排文件编辑与清洗任务,如何处理更大的数据集,以及如何利用获取的数据来创作引人入胜的故事。学完本书,你的数据处理和分析能力将更上一层楼。
* 快速了解Python基本语法、数据类型和语言概念
* 概述数据的获取与存储方式
* 清洗数据并格式化,以消除数据集中的重复值与错误
* 学习何时对数据进行标准化,何时对数据清理进行测试并将其脚本化
* 使用Scrapy写网络爬虫
* 利用新的Python库和技术对数据集进行探索与分析
* 使用Python解决方案将整个数据处理过程自动化
Python数据处理 内容简介
本书采用基于项目的方法,介绍用Python完成数据获取、数据清洗、数据探索、数据呈现、数据规模化和自动化的过程。主要内容包括:Python基础知识,如何从CSV、Excel、XML、JSON和PDF文件中提取数据,如何获取与存储数据,各种数据清洗与分析技术,数据可视化方法,如何从网站和API中提取数据。
Python数据处理 目录
第1章 python简介
1.1 为什么选择python
1.2 开始使用python
1.2.1 python版本选择
1.2.2 安装python
1.2.3 测试python
1.2.4 安装pip
1.2.5 安装代码编辑器
1.2.6 安装ipython(可选)
1.3 小结
第2章 python基础
2.1 基本数据类型
2.1.1 字符串
2.1.2 整数和浮点数
2.2 数据容器
2.2.1 变量
2.2.2 列表
2.2.3 字典
2.3 各种数据类型的用途
2.3.1 字符串方法:字符串能做什么
2.3.2 数值方法:数字能做什么
2.3.3 列表方法:列表能做什么
2.3.4 字典方法:字典能做什么
2.4 有用的工具:type、dir和help
2.4.1 type
2.4.2 dir
2.4.3 help
2.5 综合运用
2.6 代码的含义
2.7 小结
第3章 供机器读取的数据
3.1 csv数据
3.1.1 如何导入csv数据
3.1.2 将代码保存到文件中并在命令行中运行
3.2 json数据
3.3 xml数据
3.4 小结
第4章 处理excel文件
4.1 安装python包
4.2 解析excel文件
4.3 开始解析
4.4 小结
第5章 处理pdf文件,以及用python解决问题
5.1 尽量不要用pdf
5.2 解析pdf的编程方法
5.2.1 利用slate库打开并读取pdf
5.2.2 将pdf转换成文本
5.3 利用pdfminer解析pdf
5.4 学习解决问题的方法
5.4.1 练习:使用表格提取,换用另一个库
5.4.2 练习:手动清洗数据
5.4.3 练习:试用另一种工具
5.5 不常见的文件类型
5.6 小结
第6章 数据获取与存储
6.1 并非所有数据生而平等
6.2 真实性核查
6.3 数据可读性、数据清洁度和数据寿命
6.4 寻找数据
6.4.1 打电话
6.4.2 美国政府数据
6.4.3 全球政府和城市开放数据
6.4.4 组织数据和非政府组织数据
6.4.5 教育数据和大学数据
6.4.6 医学数据和科学数据
6.4.7 众包数据和api
6.5 案例研究:数据调查实例
6.5.1 埃博拉病毒危机
6.5.2 列车安全
6.5.3 足球运动员的薪水
6.5.4 童工
6.6 数据存储
6.7 数据库简介
6.7.1 关系型数据库:mysql和postgresql
6.7.2 非关系型数据库:nosql
6.7.3 用python创建本地数据库
6.8 使用简单文件
6.8.1 云存储和python
6.8.2 本地存储和python
6.9 其他数据存储方式
6.10 小结
第7章 数据清洗:研究、匹配与格式化
7.1 为什么要清洗数据
7.2 数据清洗基础知识
7.2.1 找出需要清洗的数据
7.2.2 数据格式化
7.2.3 找出离群值和不良数据
7.2.4 找出重复值
7.2.5 模糊匹配
7.2.6 正则表达式匹配
7.2.7 如何处理重复记录
7.3 小结
第8章 数据清洗:标准化和脚本化
8.1 数据归一化和标准化
8.2 数据存储
8.3 找到适合项目的数据清洗方法
8.4 数据清洗脚本化
8.5 用新数据测试
8.6 小结
第9章 数据探索和分析
9.1 探索数据
9.1.1 导入数据
9.1.2 探索表函数
9.1.3 联结多个数据集
9.1.4 识别相关性
9.1.5 找出离群值
9.1.6 创建分组
9.1.7 深入探索
9.2 分析数据
9.2.1 分离和聚焦数据
9.2.2 你的数据在讲什么
9.2.3 描述结论
9.2.4 将结论写成文档
9.3 小结
第10章 展示数据
10.1 避免讲故事陷阱
10.1.1 怎样讲故事
10.1.2 了解听众
10.2 可视化数据
10.2.1 图表
10.2.2 时间相关数据
10.2.3 地图
10.2.4 交互式元素
10.2.5 文字
10.2.6 图片、视频和插画
10.3 展示工具
10.4 发布数据
10.4.1 使用可用站点
10.4.2 开源平台:创建一个新网站
10.4.3 jupyter(曾名ipython notebook)
10.5 小结
第11章 网页抓取:获取并存储网络数据
11.1 抓取什么和如何抓取
11.2 分析网页
11.2.1 检视:标记结构
11.2.2 网络/时间线:页面是如何加载的
11.2.3 控制台:同javascript交互
11.2.4 页面的深入分析
11.3 得到页面:如何通过互联网发出请求
11.4 使用beautiful soup读取网页
11.5 使用lxml读取网页
11.6 小结
第12章 高级网页抓取:屏幕抓取器与爬虫
12.1 基于浏览器的解析
12.1.1 使用selenium进行屏幕读取
12.1.2 使用ghost.py进行屏幕读取
12.2 爬取网页
12.2.1 使用scrapy创建一个爬虫
12.2.2 使用scrapy爬取整个网站
12.3 网络:互联网的工作原理,以及为什么它会让脚本崩溃
12.4 变化的互联网(或脚本为什么崩溃)
12.5 几句忠告
12.6 小结
第13章 应用编程接口
13.1 api特性
13.1.1 rest api与流式api
13.1.2 频率限制
13.1.3 分级数据卷
13.1.4 api key和token
13.2 一次简单的twitter rest api数据拉取
13.3 使用twitter rest api进行高级数据收集
13.4 使用twitter流式api进行高级数据收集
13.5 小结
第14章 自动化和规模化
14.1 为什么要自动化
14.2 自动化步骤
14.3 什么会出错
14.4 在哪里自动化
14.5 自动化的特殊工具
14.5.1 使用本地文件、参数及配置文件
14.5.2 在数据处理中使用云
14.5.3 使用并行处理
14.5.4 使用分布式处理
14.6 简单的自动化
14.6.1 cronjobs
14.6.2 web接口
14.6.3 jupyter notebook
14.7 大规模自动化
14.7.1 celery:基于队列的自动化
14.7.2 ansible:操作自动化
14.8 监控自动化程序
14.8.1 python日志
14.8.2 添加自动化信息
14.8.3 上传和其他报告
14.8.4 日志和监控服务
14.9 没有万无一失的系统
14.10 小结
第15章 结论
15.1 数据处理者的职责
15.2 数据处理之上
15.2.1 成为一名更优秀的数据分析师
15.2.2 成为一名更优秀的开发者
15.2.3 成为一名更优秀的视觉化讲故事者
15.2.4 成为一名更优秀的系统架构师
15.3 下一步做什么
附录a 编程语言对比
附录b 初学者的python学习资源
附录c 学习命令行
附录d 高级python设置
附录e python陷阱
附录f ipython指南
附录g 使用亚马逊网络服务
Python数据处理 精彩文摘
第 2 章 Python 基础
前面你已经在计算机上安装并运行了 Python,下面我们来学习一些 Python 的基础知识。后续章节的内容都建立在这些概念的基础上,我们需要首先掌握这些概念。
在上一章中,我们利用下面几行代码测试了 Python 的安装是否成功:
import sys
import pprint
pprint.pprint(sys.path)
读完本章,你将会明白上面每一行代码的含义,并学会相关术语,能够说明上述代码的作用。你还将学习 Python 的各种数据类型,对 Python 的入门概念有基本的了解。
我们会讲得比较快,把重点放在学习后续章节时需要知道的内容。后续章节中我们还会根据需要讲一些新概念。我们希望这种方法能让你将这些新概念应用于感兴趣的数据集和问题,并从中学到东西。
首先我们启动 Python 解释器。本章的 Python 代码都在解释器中运行。浏览一遍本章这样的介绍性内容是很容易的,但我们要着重强调动手敲代码的重要性。与学习一门口语类似,在实践中学习是最有效的学习方法。在你输入本书练习代码并运行的过程中,会遇到大量的错误,而调试过程(解决这些错误的过程)会让你学到很多知识。
本文来自习惯有你投稿,不代表电子书资源网立场,如若转载,请联系原作者获取。