Pandas入门与实战应用 ——基于Python的数据分析与处理
  • 推荐1
  • 收藏1
  • 浏览133

Pandas入门与实战应用 ——基于Python的数据分析与处理

周峰 (作者) 

  • 书  号:978-7-121-44070-0
  • 出版日期:2022-08-01
  • 页  数:
  • 开  本:
  • 出版状态:上市销售
  • 维护人:刘 博
本书首先讲解Pandas快速入门的基础知识,如Pandas的定义、可处理的数据类型、优势、开发环境配置、常用的数据结构等;然后通过实例剖析讲解Pandas数据的导入、导出、查看、清洗、合并、对比、预处理;接着讲解Pandas数据的提取、筛选、汇总、统计及可视化;然后讲解Pandas数据的线性模型和广义线性模型,最后讲解Pandas数据实战分析。
在讲解过程中即考虑读者的学习习惯,又通过具体实例剖析讲解Pandas实战应用中的热点问题、关键问题及种种难题。
实用性:着眼于Pandas 实战应用,探讨深层次的技巧问题。
详尽的实例:每一章都附有大量的实例,通过实例介绍知识点。
全面性:涵盖了Pandas 应用的所有知识,以及实战应用中的关键问题。
生动性:在内容表现上,采用大量的图表,使整本书的风格生动、形象。
在大数据时代,数据分析是每个职场人士的必备技能。在数据分析领域,Python语言以其简单易用,并提供了优秀、好用的第三方库和数据分析的完整框架而深受数据分析人员的青睐。可以说,Python已经当仁不让地成为了数据分析人员的一把“利器”。程序员想要进入数据分析行业,就要掌握Python数据分析技术,只有这样才能在严峻的就业市场中具有较强的竞争力。
Pandas是Python的核心数据分析支持库,提供了快速、灵活、明确的数据结构,目的在于简单、直观地处理关系型或标记型数据。Pandas的目标是成为Python数据分析实战必备的高级工具,其长远目标是成为最强大、最灵活,可以支持任何语言的开源数据分析工具。
本书结构
本书共14章,具体章节安排如下。
 第1章和第2章:讲解Pandas的基础知识和常用数据结构,如Pandas的定义、优势、Anaconda的下载和安装、Jupyter Notebook界面的基本操作、Python的数据结构、NumPy的数据结构和Pandas的数据结构。
 第3~6章:讲解Pandas数据分析之前的准备,即Pandas数据的导入、导出、查看、清洗、合并、对比和预处理。
 第7~12章:讲解Pandas数据的提取、筛选、聚合函数、分组、透视、统计和可视化。
 第13章和第14章:讲解Pandas数据的机器学习算法和Pandas的时间序列数据。

本书特色
本书的特色归纳如下。
 实用性:首先着眼于Pandas实战应用,然后探讨深层次的技巧问题。
 详尽的例子:每一章都附有大量的实例,通过这些实例介绍知识点。每个实例都是编者精心选择的,读者反复练习,举一反三,就可以真正掌握Pandas实战技巧,达到学以致用的目的。
 全面性:包含了Pandas应用的所有知识,即Pandas的基础知识、常用数据结构、Pandas数据的导入、导出、查看、清洗、合并、对比、预处理、提取、筛选、聚合函数、分组、透视、统计、可视化、机器学习、时间序列等。
 在内容表现上,为了能够让读者在学习知识时不至过于枯燥,采用了大量的图表,使整本书的风格显得生动、形象。
创作团队
本书由周峰、周俊庆编写,下面人员对本书的编写提出了宝贵意见并参与了部分内容的编写工作,他们是周凤礼、陈宣各、周令、张新义、王征、张瑞丽等。
由于时间仓促,加之水平有限,书中的缺点和不足之处在所难免,敬请读者批评指正。

目录

第1章 Pandas快速入门 1
1.1 初识Pandas 2
1.1.1 什么是Pandas 2
1.1.2 Pandas的主要数据结构 2
1.1.3 Pandas的优势 2
1.2 Pandas开发环境配置 3
1.2.1 Python概述 3
1.2.2 Anaconda概述 5
1.2.3 Anaconda的下载 5
1.2.4 Anaconda的安装 8
1.2.5 Jupyter Notebook概述 11
1.3 Jupyter Notebook界面的基本操作 13
1.3.1 Jupyter Notebook的主界面 13
1.3.2 Jupyter Notebook的编辑页面 14
1.3.3 Jupyter Notebook的文件操作 18
1.4 实例:第一个Pandas数据处理程序 20
第2章 Pandas常用的数据结构 22
2.1 初识数据结构 23
2.1.1 什么是数据及数据处理 23
2.1.2 什么是信息 23
2.1.3 什么是数据结构 24
2.2 Python的数据结构 24
2.2.1 数值型应用实例 24
2.2.2 字符串型应用实例 27
2.2.3 列表应用实例 30
2.2.4 元组应用实例 34
2.2.5 字典应用实例 36
2.2.6 集合应用实例 38
2.3 NumPy的数据结构 40
2.3.1 NumPy数组的创建 41
2.3.2 NumPy特殊数组 42
2.3.3 NumPy序列数组 43
2.3.4 NumPy数组运算 44
2.3.5 NumPy的矩阵 45
2.3.6 两个数组的点积 46
2.3.7 两个向量的点积 47
2.3.8 数组的向量内积 48
2.3.9 矩阵的行列式 49
2.3.10 矩阵的逆 50
2.4 Pandas的数据结构 51
2.4.1 一维数组系列应用实例 52
2.4.2 二维数组应用实例 53
第3章 Pandas数据的导入与导出 55
3.1 导入CSV文件 56
3.1.1 CSV文件概述 56
3.1.2 创建CSV文件,并输入内容 56
3.1.3 read_csv()方法 58
3.1.4 利用read_csv()方法导入CSV文件实例 60
3.2 导入Excel文件 63
3.2.1 在Excel中输入内容并上传 63
3.2.2 read_excel()方法 65
3.2.3 利用read_excel()方法导入Excel文件实例 66
3.3 导入JSON文件 68
3.3.1 创建JSON文件,并输入内容 68
3.3.2 read_json()方法 69
3.3.3 利用read_json()方法导入JSON文件实例 70
3.4 Pandas数据的输出 70
3.4.1 输出CSV文件 71
3.4.2 输出Excel文件 73
3.4.3 输出JSON文件 76
第4章 Pandas数据表的查看和清洗 79
4.1 Pandas数据表信息的查看 80
4.1.1 利用shape属性查看数据表的维度 80
4.1.2 利用dtype和dtypes属性查看列数据的类型 82
4.1.3 利用columns和values属性查看表头和数据表数据信息 84
4.1.4 利用isnull()方法查看空值信息 85
4.1.5 利用unique()方法查看列中的无重复数据信息 87
4.1.6 利用info()方法查看数据表的基本信息 88
4.1.7 利用head()方法查看数据表前几行数据 89
4.1.8 利用tail()方法查看数据表后几行数据 91
4.2 Pandas数据表的清洗 92
4.2.1 空值的清洗 92
4.2.2 格式错误数据的清洗 97
4.2.3 错误数据的清洗 98
4.2.4 重复数据的清洗 101
4.2.5 数据表列名的清洗 103
4.2.6 数据内容的清洗 105
第5章 Pandas数据的合并与对比 108
5.1 利用append()方法追加数据 109
5.1.1 append()方法及参数 109
5.1.2 利用append()方法实现相同结构数据表的数据追加 109
5.1.3 利用append()方法实现不同结构数据表的数据追加 111
5.1.4 利用append()方法实现忽略索引的数据追加 113
5.1.5 追加Series序列 115
5.1.6 追加字典列表 117
5.2 利用concat()方法合并数据 118
5.2.1 concat()方法及参数 118
5.2.2 利用concat()方法纵向合并数据 119
5.2.3 利用concat()方法横向合并数据 120
5.2.4 合并数据的交集 122
5.3 利用merge()方法合并数据 125
5.3.1 merge()方法及参数 125
5.3.2 利用merge()方法合并数据实例 126
5.4 利用compare()方法对比数据 130
5.4.1 compare()方法及参数 130
5.4.2 利用compare()方法对比数据实例 131
第6章 Pandas数据的预处理 135
6.1 设置索引列 135
6.1.1 Pandas索引的作用 136
6.1.2 set_index()方法及参数 136
6.1.3 利用set_index()方法设置索引列实例 137
6.1.4 利用reset_index()方法还原索引列实例 139
6.2 排序 141
6.2.1 按索引列排序 141
6.2.2 按指定列排序 144
6.3 分组标记 146
6.3.1 利用where()方法添加分组标记 146
6.3.2 根据多个条件进行分组标记 148
6.4 列的拆分 151
第7章 Pandas数据的提取 155
7.1 利用loc[ ]提取数据 155
7.1.1 利用loc[ ]提取整行数据 156
7.1.2 利用loc[ ]提取整列数据 158
7.1.3 利用loc[ ]提取具体数据 161
7.2 利用iloc[ ]提取数据 164
7.2.1 利用iloc[ ]提取整行数据 165
7.2.2 利用iloc[ ]提取整列数据 167
7.2.3 利用iloc[ ]提取具体数据 168
7.3 利用属性提取数据 170
7.4 利用For循环提取数据 172
第8章 Pandas数据的筛选 175
8.1 Pandas数据关系筛选 176
8.1.1 等于关系数据筛选实例 176
8.1.2 不等于关系数据筛选实例 178
8.1.3 大于和大于等于关系数据筛选实例 180
8.1.4 小于和小于等于关系数据筛选实例 182
8.2 Pandas数据逻辑筛选 183
8.2.1 使用“与”进行数据筛选实例 183
8.2.2 使用“或”进行数据筛选实例 185
8.2.3 使用“非”进行数据筛选实例 186
8.3 使用query()方法进行数据筛选实例 188
8.4 使用filter()方法进行数据筛选 192
8.4.1 filter()方法及意义 193
8.4.2 使用filter()方法进行数据筛选实例 193
第9章 Pandas数据的聚合函数 197
9.1 sum()函数的应用 197
9.1.1 sum()函数及参数 198
9.1.2 sum()函数应用实例 198
9.2 mean()函数的应用 202
9.2.1 mean()函数及参数 203
9.2.2 mean()函数应用实例 203
9.3 max()函数的应用 207
9.3.1 max()函数及参数 207
9.3.2 max()函数应用实例 207
9.4 min()函数的应用 210
9.4.1 min()函数及参数 210
9.4.2 min()函数应用实例 211
9.5 count()函数的应用 213
9.5.1 count()函数及参数 214
9.5.2 count()函数应用实例 214
第10章 Pandas数据的分组与透视 217
10.1 Pandas数据的分组 218
10.1.1 groupby()方法及参数 218
10.1.2 groupby()方法的应用 218
10.1.3 agg()方法的应用 223
10.1.4 transform()方法的应用 226
10.2 Pandas数据的透视 230
10.2.1 pivot_table()方法及参数 230
10.2.2 利用pivot_table()方法透视数据实例 231
10.2.3 crosstab()方法及参数 235
10.2.4 利用crosstab()方法透视数据实例 236
第11章 Pandas数据的统计 243
11.1 数据采样 243
11.1.1 sample()方法及参数 244
11.1.2 利用sample()方法进行数据采样实例 244
11.2 数据统计 249
11.2.1 数据表描述性统计 249
11.2.2 利用describe()方法进行数据表描述性统计实例 250
11.2.3 中位数的应用 255
11.2.4 方差的应用 260
11.2.5 标准差的应用 263
11.3 数据相关性分析 267
11.3.1 协方差的应用 267
11.3.2 协方差相关系数的应用 270
第12章 Pandas数据的可视化 275
12.1 利用Pandas中的plot()方法绘图 276
12.1.1 plot()方法及参数 276
12.1.2 绘制折线图实例 277
12.1.3 绘制条形图实例 279
12.1.4 利用plot()方法绘制其他类型图形实例 283
12.2 利用Matplotlib包绘制Pandas数据图形 287
12.2.1 figure()方法的应用实例 288
12.2.2 plot()方法的应用实例 290
12.2.3 subplot()方法的应用实例 294
12.2.4 add_axes()方法的应用实例 296
12.2.5 legend()方法的应用实例 298
12.2.6 设置线条的宽度和颜色实例 300
12.2.7 添加坐标轴网格线实例 302
第13章 Pandas数据的机器学习算法 303
13.1 机器学习概述 304
13.1.1 什么是机器学习 304
13.1.2 机器学习的类型 304
13.2 常见的机器学习算法 305
13.3 机器学习的sklearn包 307
13.3.1 sklearn包中的数据集 308
13.3.2 iris数据集 308
13.3.3 查看iris数据集实例 309
13.4 决策树 314
13.4.1 决策树的组成 315
13.4.2 决策树的优点 315
13.4.3 决策树的缺点 316
13.4.4 决策树实现实例 316
13.5 随机森林 318
13.5.1 随机森林的构建 318
13.5.2 随机森林的优缺点 318
13.5.3 随机森林的应用范围 319
13.5.4 随机森林实现实例 319
13.6 支持向量机 321
13.6.1 支持向量机的工作原理 321
13.6.2 核函数 322
13.6.3 支持向量机的优点 324
13.6.4 支持向量机的缺点 324
13.6.5 支持向量机实现实例 325
13.7 朴素贝叶斯算法 328
13.7.1 朴素贝叶斯算法的思想 329
13.7.2 朴素贝叶斯算法的步骤 329
13.7.3 朴素贝叶斯算法的优缺点 330
13.7.4 高斯朴素贝叶斯模型实现实例 330
13.7.5 多项式分布朴素贝叶斯模型实现实例 333
13.7.6 伯努力朴素贝叶斯模型实现实例 336
第14章 Pandas的时间序列数据 338
14.1 Pandas时间序列的创建 339
14.1.1 date_range()方法及参数 339
14.1.2 利用date_range()方法创建时间序列实例 340
14.1.3 时间戳对象 341
14.2 时间类型与字符串类型的转换 343
14.3 时间序列数据的操作技巧 345
14.3.1 时间序列数据的提取 345
14.3.2 时间序列数据的筛选 349
14.3.3 时间序列数据的重采样 352
14.3.4 时间序列数据的滑动窗口 355
14.4 时间序列数据的预测 359
14.4.1 时间序列数据的准备 359
14.4.2 时间序列数据的朴素预测法 362
14.4.3 时间序列数据的简单平均预测法 363
14.4.4 时间序列数据的移动平均预测法 365
14.4.5 时间序列数据的简单指数平滑预测法 367
14.4.6 时间序列数据的霍尔特线性趋势预测法 369
14.4.7 时间序列数据的Holt-Winters季节性预测法 371
14.4.8 时间序列数据的自回归移动平均预测法 373

读者评论