主编推荐语
本书带你从实际操作的角度,一窥数据科学领域中涉及的各项技术。
内容简介
本书是一本Python数据科学的入门图书,作者结合多年工作和指导新人的经验,希望以一条简单的路线来为零基础的读者介绍数据科学。
在本书中主要使用Python编程语言,来处理真实的数据,从而满足我们对于未知的好奇。如果你喜欢其中的某一个领域,可以以此为契机进行深入的学习。
本书分为三大部分:
第1~4章是Python基础,在这个部分会介绍阅读本书必须的Python知识,但并不会包含很复杂的编程知识,比如面向对象编程就不是必要的,因为Python支持过程式编程,可以直接编写函数。
第5~7章会讲解Python直接提供的数据处理工具,这些工具包括一些易用的数据结构、标准库和第三方工具。学习使用这些工具可以让我们快速地实现某些简单的算法,而不用花费大量的时间“重新发明轮子”,Python在处理数据时的高效在此处体现得淋漓尽致。
第8~12章是一些实际的案例操作分解,涉及Python主要擅长的几个领域:统计、爬虫、科学计算、Hadoop&Spark中的集成、图计算等。
最后的三个附录分别介绍了一些关于Python的扩展知识,比如如何编写同时兼容Python2和Python3的代码,如何安装完整的Python开发环境,以及一些常用的Python技巧(处理时间、文件I/O等)等。
目录
- 版权信息
- 前言
- 第0章 发现、出发
- 0.1 何谓数据科学
- 0.1.1 海量的数据与科学的方法
- 0.1.2 数据科学并不是新概念
- 0.1.3 数据科学是一个系统工程
- 0.2 如何成为数据科学家
- 0.3 为什么是Python
- 0.4 一个简单的例子
- 第1章 Python介绍
- 1.1 Python的版本之争
- 1.2 Python解释器
- 1.2.1 Mac OS X系统
- 1.2.2 Linux系统
- 1.2.3 Windows系统
- 1.3 第一段Python程序
- 1.4 使用Python shell调试程序
- 第2章 Python基础知识
- 2.1 应当掌握的基础知识
- 2.1.1 基础数据类型
- 2.1.2 变量和赋值
- 2.1.3 操作符及表达式
- 2.1.4 文本编辑器
- 2.2 字符串
- 2.3 获取键盘输入
- 2.4 流程控制
- 2.4.1 条件判断
- 2.4.2 循环
- 2.4.3 缩进、空白和注释
- 第3章 函数及异常处理
- 3.1 函数和函数的参数
- 3.1.1 定义函数
- 3.1.2 关键字参数和默认参数
- 3.1.3 可变数量的参数
- 3.1.4 递归
- 3.2 闭包
- 3.3 异常和断言
- 第4章 高级字符串处理
- 4.1 字符集和字符编码
- 4.1.1 ASCII字符集和编码
- 4.1.2 Unicode字符集及UTF-8编码
- 4.2 字符串操作和格式化
- 4.2.1 字符串的基本操作
- 4.2.2 字符串分割
- 4.2.3 字符串格式化
- 4.3 正则表达式
- 4.3.1 正则表达式入门
- 4.3.2 在Python中使用正则表达式
- 第5章 容器和collections
- 5.1 元组
- 5.2 列表
- 5.2.1 引用传递
- 5.2.2 列表解析式
- 5.3 字典
- 5.4 collections
- 5.4.1 namedtuple
- 5.4.2 Counter
- 5.4.3 defaultdict
- 5.4.4 OrderedDict
- 第6章 Python标准库简介
- 6.1 math模块
- 6.1.1 常见常量
- 6.1.2 无穷
- 6.1.3 整数转换
- 6.1.4 绝对值和符号
- 6.1.5 常用计算
- 6.1.6 指数和对数
- 6.2 time
- 6.3 random
- 6.3.1 随机数生成器
- 6.3.2 取样
- 6.4 glob和fileinput
- 6.5 bz2和gzip
- 6.6 pprint
- 6.7 traceback
- 6.8 JSON
- 第7章 用Python读写外部数据
- 7.1 CSV文件的读写
- 7.1.1 读取CSV文件
- 7.1.2 创建CSV文件
- 7.1.3 处理方言
- 7.1.4 将读取的结果转换成字典
- 7.2 Excel文件的读写
- 7.2.1 读取Excel文件
- 7.2.2 写Excel文件
- 7.3 MySQL的读写
- 7.3.1 写入MySQL
- 7.3.2 读取MySQL
- 第8章 统计编程
- 8.1 描述性统计
- 8.1.1 人口普查数据
- 8.1.2 均值和中位数
- 8.1.3 方差和标准差
- 8.1.4 分布
- 8.2 数据可视化入门
- 8.2.1 pyplot基础
- 8.2.2 柱状图和饼图
- 8.3 概率
- 第9章 爬虫入门
- 9.1 网络资源及爬虫的基本原理
- 9.2 使用request模块获取HTML内容
- 9.2.1 关于HTTP协议
- 9.2.2 使用requests的get方法获取HTML内容
- 9.3 使用Xpath解析HTML中的内容
- 9.3.1 HTML的层级和Xpath的基本概念
- 9.3.2 使用谷歌浏览器快速创建Xpath路径
- 9.3.3 使用谷歌浏览器复制需要JS渲染的HTML页面
- 9.4 实战:爬取京东商品品类及品牌列表
- 第10章 数据科学的第三方库介绍
- 10.1 Numpy入门和实战
- 10.1.1 Numpy基础
- 10.1.2 Numpy基本运算
- 10.1.3 Numpy高级特性
- 10.1.4 kNN实战
- 10.2 Pandas的入门和实战
- 10.2.1 Pandas基础
- 10.2.2 泰坦尼克号生存率分析实战
- 10.3 Scikit-learn入门和实战
- 10.3.1 机器学习术语
- 10.3.2 Scikit-learn基础
- 10.3.2 实战
- 第11章 利用Python进行图数据分析
- 11.1 图基础
- 11.2 NetworkX入门
- 11.2.1 基本操作
- 11.2.2 为图中的元素添加属性
- 11.2.3 有向图及节点的度数
- 11.2.4 构建图及图的操作
- 11.3 使用NetworkX进行图分析
- 11.3.1 利用联通子图发现社区
- 11.3.2 通过三角计算强化社区发现
- 11.3.3 利用PageRank发现影响力中心
- 第12章 大数据工具入门
- 12.1 Hadoop
- 12.1.1 Hadoop的计算原理
- 12.1.2 在Hadoop上运行Python程序
- 12.2 Spark
- 12.2.1 为什么需要Spark
- 12.2.2 如何学习Spark
- 12.3 大数据与数据科学的区别
- 附录A 编写Python 2与Python 3兼容的代码
- 附录B 安装完整的Python开发环境
- 附录C 常用的Python技巧
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。