书籍详情
Pandas入门与实战应用:基于Python的数据分析与处理
作者:周峰
出版社:电子工业出版社
出版时间:2022-08-01
ISBN:9787121440700
定价:¥89.00
购买这本书可以去
内容简介
本书首先讲解Pandas快速入门的基础知识,如Pandas的定义、可处理的数据类型、优势、开发环境配置、常用的数据结构等;然后通过实例剖析讲解Pandas数据的导入、导出、查看、清洗、合并、对比、预处理;接着讲解Pandas数据的提取、筛选、汇总、统计及可视化;然后讲解Pandas数据的线性模型和广义线性模型,最后讲解Pandas数据实战分析。在讲解过程中即考虑读者的学习习惯,又通过具体实例剖析讲解Pandas实战应用中的热点问题、关键问题及种种难题。
作者简介
周峰,毕业于青岛海洋大学计算机科学与应用专业。曾先后就职于青岛商业中专和青岛远洋学院计算机系,从事计算机辅助设计的教学与研究。曾出版作品如下:《C语言实用程序设计100例》 《VB控件实用程序设计100例》 《计算机立体美术设计3ds max实例教程》《Flash MX 2004网络动画精彩实例创作通》
目录
第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
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
猜您喜欢