计算机类教材 > 大数据

Python数据分析与应用:从数据获取到可视化)(第2版)

书号:9787113306496 套系名称:Python 应用编程丛书

作者:黑马程序员 出版日期:2024-01-01

定价:59.00 页码 / 开本: /16

策划编辑:翟玉峰 责任编辑:翟玉峰

适用专业:计算机类 适用层次:高等教育

最新印刷时间:2024-01-01

资源下载
教学课件 教学素材
习题答案 教学案例
教学设计 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • 本书以Anaconda为主要开发工具,全面系统地介绍了Python数据分析的相关知识。全书共10章,第 1 章介绍了数据分析的基本概念,以及开发工具的安装和使用;第 2~6 章介绍了 Python 数据分析的常用库及其应用,包括如何使用 NumPy 对一维数组和二维数组进行数值计算和操作,如何使用pandas 进行数据获取、预处理以及分组与聚合等一些操作,如何使用 Matplotlib、Seaborn 与 Pyecharts进行数据可视化;第 7 ~ 8 章介绍了时间序列和文本数据的分析;第 9 章介绍了机器学习的相关概念以及KNN算法;第10章开发了一个数据分析的综合项目,完整呈现了数据分析及可视化的全过程。
    
    本书附有丰富的教学资源,包括教学大纲、教学设计、教学PPT、教学视频、配套题库、源代码等,为帮助读者更好地学习本书内容,还提供在线答疑服务。
    
    本书适合作为高等院校计算机相关专业及其他工科专业数据分析类课程教材,也可作为数据分析爱好者的参考书。 
  •        在大数据时代,数据分析的热度正在快速攀升,数据分析领域已成为当今最受关注和追捧的领域之一。数据分析是从大量数据中提取有价值信息的重要过程,它利用各种技术和方法,揭示数据中的模式、趋势和关系,并为决策和问题解决提供支持。
           Python 在数据分析、数据可视化、机器学习等方面都有非常成熟的库和活跃的社区,从21 世纪开始,在行业应用和学术研究中使用 Python 进行数据分析的势头越来越猛,对于要往数据分析方向发展的读者而言,学习 Python 数据分析是一个不错的选择。
    高校对数据分析的广泛关注使得这一领域在教育界日益受到重视,不少高校纷纷开设了与数据分析相关的课程。为了满足高校数据分析教学的需求,我们特意编写了这本专注于 Python数据分析的教材。
           编写思路
           本书延用第一版的编写思路,具体如下:
           (1)本书循序渐进地介绍了学习数据分析必备的核心知识,以及一些机器学习相关的知识,帮助读者具备数据分析的相关技能,能够独立编写项目,以胜任 Python 数据分析工程师相关岗位的工作。
           (2)本书在讲解时,采用需求引入的方式,循序渐进地介绍了数据分析库的基本使用,同时对比较特殊的时间序列和文本数据的分析进行了拓展讲解,以提高读者的开发兴趣和开发能力。
           (3)在讲解知识的同时,不断地增加案例,不仅有针对某个知识点的示例,而且有针对某章的案例,还有针对全书的综合案例,以最大限度帮助读者真正掌握 Python 数据分析的核心知识,并帮助开发人员多动手练习,以真正掌握相关技术。
           修订内容
           为了与数据分析技术和行业发展保持同步,本书在第一版的基础上进行了修订。修订的主要内容包括技术更新、内容优化和融入思政。首先,根据数据分析行业的发展动向进行了技术更新。其次,根据任课教师的需求和反馈,对图书内容进行了优化,增加了更多案例以平衡理论与实践的比重。最后,结合国家对教育行业的政策要求,加入了与思政教育相关的内容。通过这些修订,旨在满足读者的需求,完善教学体系,推动学生全面成长。修订的具体内容如下:
           (1)新增了机器学习一章,读者可以接触机器学习以及 KNN 算法。
           (2)更新了数据可视化一章,删除 bokeh 库,增加 Pyecharts 库。
           (3)更新 Anaconda 工具的版本,升级到 2022.10 版本,紧跟技术发展需求。
           (4)优化内容,给抽象的知识点增加示意图或示例,读者更容易吸收。
           (5)更新七个章节的案例,案例与知识点联系更紧密。
           本书内容
           本书基于 Windows 10 系统的 Anaconda3 2022.10 工具,系统全面地讲解了 Python 数据分析的核心知识,全书共分为 10 章,各章内容介绍如下。
           第1 章主要带领大家认识数据分析,包括数据分析产生的背景、什么是数据分析、数据分析的应用场景、数据分析的流程、选择 Python 做数据分析的原因、搭建开发环境、启用Jupyter Notebook 工具,以及常见的数据分析库等。通过本章的学习,读者能对数据分析有一个初步了解,并为后续章节的学习准备好开发环境。
           第2~6 章属于本书的重点知识,主要对 Python 数据分析方向的常用库进行了介绍,包括NumPy、pandas、Matplotlib、Seaborn 与 Pyecharts,并着重对这几个库的核心用法进行了详细讲解。通过这几章的学习,读者能够根据需求熟练使用 pandas 库进行数据处理,使用tplotlib、Seaborn 与 Pyecharts 库绘制出想要的图表。
           第7~9 章属于本书的扩展知识,主要介绍了时间序列分析、文本数据分析、机器学习的知识。通过这几章的学习,读者能够掌握处理时间序列和文本数据的技能,可以简单了解机器学习以及 KNN 算法的知识。
           第10 章运用前面所学的知识,开发了一个相对比较完整的项目——租房数据统计分析。
    通过本章的学习,读者能够在项目中灵活运用数据分析库解决问题,举一反三,以具备开发简单数据分析项目的能力。
           本书特色
           本书继承第一版的特色,修订后具有以下几个特色:
           (1)强调实践导向。本书除了第 1、10 章以外,每个章节都为知识点配置了大量示例和章节综合案例,涵盖各种实际应用场景,比如数据清洗、可视化、统计分析和机器学习等,另外第 10 章配置了实战演练。通过这些案例,读者能够深入了解如何在真实世界中应用 Python进行数据分析,并且可以通过实践来巩固所学内容。
           (2)注重全面性。本书不仅深入探讨了 NumPy、pandas、Matplotlib 等数据分析常用库的使用方法,还扩展介绍了数据分析相关领域的知识,比如时间序列分析、文本数据分析、机器学习,使读者能够全面了解数据分析的方法和技巧。
           读者若不能完全理解教材中所讲知识,可登录在线平台,配合平台中的教学视频进行学习。此外读者在学习的过程中,务必要勤于练习,确保真正吸收所学知识。若在学习的过程中遇到无法解决的困难,建议读者莫要纠结于此,继续往后学习,或可豁然开朗。
           致 谢
           本书的编写和整理工作由传智播客教育科技股份有限公司完成,主要参与人员有高美云、王晓娟、孙东等,全体人员在这近一年的编写过程中付出了很多辛勤的汗水,在此一并表示衷心的感谢。
           意见反馈
           尽管我们付出了最大的努力,但书中难免会有不妥之处,欢迎各界专家和读者朋友们来信给予宝贵意见,我们将不胜感激。您在阅读本书时,如发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。
           请发送电子邮件至:itcast_book@vip.sina.com。
        
           黑马程序员
           2023 年 5 月于北京
  • 第1章 数据分析概述 1
    1.1 数据分析产生的背景 1
    1.2 什么是数据分析 2
    1.3 数据分析的应用场景 3
    1.4 数据分析的流程 4
    1.5 为什么选择 Python 做数据分析 5
    1.6 搭建开发环境 6
    1.6.1 Anaconda 概述 6
    1.6.2 Anaconda 的安装 7
    1.6.3 通过 Anaconda 管理包 12
    1.7 启用 Jupyter Notebook 14
    1.7.1 启动 Anaconda 自带的 Jupyter Notebook 14
    1.7.2 Jupyter Notebook 界面详解 15
    1.7.3 Jupyter Notebook 的基本使用 17
    1.8 常见的数据分析库 20
    小结 21
    习题 22
    第2章 科学计算库 NumPy 23
    2.1 认识 NumPy 数组 23
    2.1.1 NumPy 数组的相关概念 23
    2.1.2 NumPy 数组的属性 25
    2.2 创建数组 26
    2.3 数组的数据类型 28
    2.3.1 查看数据类型 28
    2.3.2 转换数据类型 29
    2.4 数组的索引和切片 30
    2.4.1 数组的索引方式 30
    2.4.2 整数索引和切片 31
    2.4.3 花式索引 32
    2.4.4 布尔索引 33
    2.5 数组的算术运算 34
    2.5.1 形状相同的数组间的算术运算 34
    2.5.2 形状不同的数组间的算术运算 35
    2.5.3 数组与标量的算术运算 36
    2.6 通用函数 37
    2.7 数组的重塑与转置 39
    2.7.1 数组的重塑 39
    2.7.2 数组的转置 40
    2.8 数组的其他操作 43
    2.8.1 条件逻辑 43
    2.8.2 统计运算 43
    2.8.3 数组元素排序 44
    2.8.4 检索数组元素是否满足条件 45
    2.8.5 查找数组的唯一元素 45
    2.8.6 判断元素是否在其他数组中 45
    2.9 线性代数模块 46
    2.10 随机数模块 47
    2.11 案例:计算股票收益率和波动率 48
    2.11.1 案例需求 48
    2.11.2 数据准备 49
    2.11.3 案例实现 49
    小结 50
    习题 50
    第3章 数据分析库 pandas 基础 52
    3.1 数据结构 53
    3.1.1 Series 53
    3.1.2 DataFrame 55
    3.2 索引和切片操作 57
    3.2.1 索引对象 57
    3.2.2 重置索引 58
    3.2.3 通过索引和切片获取数据 60
    3.2.4 通过 loc 和 iloc 属性获取数据 62
    3.3 读写数据 65
    3.3.1 读写 CSV 和 TXT 文件的数据 65
    3.3.2 读写 Excel 文件的数据 69
    3.3.3 读取网页表格的数据 72
    3.3.4 读写数据库 73
    3.4 数据排序 77
    3.4.1 按索引排序 77
    3.4.2 按值排序 78
    3.5 算术运算与数据对齐 79
    3.6 统计计算与描述 80
    3.6.1 统计计算 80
    3.6.2 统计描述 81
    3.7 分层索引操作 82
    3.7.1 创建分层索引 82
    3.7.2 创建有分层索引的对象 84
    3.7.3 使用分层索引获取数据 86
    3.7.4 交换索引层级的顺序 87
    3.7.5 分层索引排序 87
    3.8 案例:陕西高考分数线统计分析 89
    3.8.1 案例需求 89
    3.8.2 数据准备 89
    3.8.3 案例实现 89
    小结 92
    习题 92
    第4章 数据预处理 94
    4.1 数据清洗 94
    4.1.1 缺失值的检测 95
    4.1.2 缺失值的处理 96
    4.1.3 重复值的检测 100
    4.1.4 重复值的处理 101
    4.1.5 异常值的检测 101
    4.1.6 异常值的处理 104
    4.1.7 转换数据类型 106
    4.2 数据合并 108
    4.2.1 堆叠合并 108
    4.2.2 主键合并 110
    4.2.3 根据索引合并 115
    4.2.4 合并重叠数据 117
    4.3 数据重塑 118
    4.3.1 重塑分层索引 118
    4.3.2 轴向旋转 121
    4.4 数据转换 122
    4.4.1 面元划分 122
    4.4.2 哑变量处理 123
    4.5 案例:预处理二手房数据 124
    4.5.1 案例需求 125
    4.5.2 数据准备 125
    4.5.3 案例实现 127
    小结 131
    习题 131
    第5章 数据聚合与分组运算 134
    5.1 分组与聚合的原理 134
    5.2 分组操作 135
    5.2.1 通过 groupby() 对数据进行分组 135
    5.2.2 查看分组信息 140
    5.3 数据聚合 141
    5.3.1 通过统计方法聚合数据 141
    5.3.2 通过 agg() 方法聚合数据 142
    5.4 分组级运算 145
    5.4.1 数据转换 145
    5.4.2 数据应用 147
    5.5 案例:篮球运动员信息分析 149
    5.5.1 案例需求 149
    5.5.2 数据准备 150
    5.5.3 案例实现 150
    小结 158
    习题 159
    第6章 数据可视化 161
    6.1 数据可视化概述 161
    6.1.1 什么是数据可视化 161
    6.1.2 常见的图表类型 162
    6.1.3 图表的辅助元素 165
    6.2 使用 Matplotlib 绘图 166
    6.2.1 绘制折线图 166
    6.2.2 绘制柱形图 170
    6.2.3 绘制直方图 173
    6.2.4 绘制散点图 176
    6.3 使用 Seaborn 绘图 177
    6.3.1 可视化数据的分布 178
    6.3.2 用分类数据绘图 181
    6.4 使用 Pyecharts 绘图 185
    6.4.1 Pyecharts 简介 185
    6.4.2 绘制柱形图 188
    6.4.3 绘制词云图 191
    6.4.4 绘制气泡图 192
    6.4.5 绘制圆环图 195
    6.5 案例:电影数据分析 196
    6.5.1 案例需求 196
    6.5.2 数据准备 197
    6.5.3 案例实现 198
    小结 203
    习题 203
    第7章 时间序列分析 205
    7.1 时间序列概述 205
    7.2 时间序列的基本操作 206
    7.2.1 创建带时间戳的时间序列 206
    7.2.2 获取时间序列子集 207
    7.3 固定频率的时间序列 209
    7.3.1 创建固定频率的时间序列 209
    7.3.2 时间序列的频率与偏移量 211
    7.3.3 时间序列的移动 213
    7.4 时间周期与计算 214
    7.4.1 创建带时期索引的对象 214
    7.4.2 时期的频率转换 215
    7.5 重采样 216
    7.5.1 重采样方法 216
    7.5.2 降采样 218
    7.5.3 升采样 219
    7.6 滑动窗口 220
    7.7 案例:某城市报警记录分析 223
    7.7.1 案例需求 223
    7.7.2 数据准备 223
    7.7.3 案例实现 224
    小结 229
    习题 229
    第8章 文本数据分析. 231
    8.1 文本数据分析工具 231
    8.1.1 认识 NLTK 与 jieba 231
    8.1.2 安装 jieba 和 NLTK 语料库 232
    8.2 文本预处理 234
    8.2.1 基本流程 234
    8.2.2 分词 235
    8.2.3 词性标注 236
    8.2.4 词形归一化 238
    8.2.5 删除停用词 240
    8.3 文本情感分析 241
    8.4 文本相似度 243
    8.5 文本分类 246
    8.6 案例:商品评论分析 249
    8.6.1 案例需求 249
    8.6.2 数据准备 250
    8.6.3 案例实现 250
    小结 253
    习题 253
    第9章 机器学习入门 256
    9.1 机器学习简介 256
    9.1.1 什么是机器学习 256
    9.1.2 机器学习的基本概念 257
    9.1.3 机器学习算法的分类 259
    9.1.4 机器学习解决问题的流程 260
    9.1.5 认识机器学习库 scikit-learn 262
    9.2 KNN 算法 263
    9.2.1 KNN 算法的思想 264
    9.2.2 使用 sklearn 实现 KNN 算法 264
    9.2.3 超参数 266
    9.2.4 网格搜索与交叉验证 269
    9.2.5 归一化 271
    9.2.6 使用 sklearn 实现归一化 273
    9.3 案例:预测签到位置 275
    9.3.1 案例需求 275
    9.3.2 数据准备 276
    9.3.3 案例实现 276
    小结 280
    习题 280
    第10章 实战演练——租房数据统计分析 282
    10.1 数据收集 282
    10.2 数据处理 283
    10.2.1 重复值检测与处理 283
    10.2.2 数据类型转换 284
    10.3 数据分析与展示 285
    10.3.1 房源数量分析 285
    10.3.2 户型数量分析 287
    10.3.3 房源平均租金分析 289
    10.3.4 房源面积区间分析 292
  • 江苏传智播客教育科技股份有限公司(简称传智播客)作为第一个实现A股IPO上市的教育企业,是一家培养高精尖数字化专业人才的公司,主要培养人工智能、大数据、智能制造、软件、互联网、区块链、数据分析、网络营销、新媒体等领域的人才。“黑马程序员”是传智播客旗下高端IT教育品牌。
  • (1)强调实践导向。本书除了第 1、10 章以外,每个章节都为知识点配置了大量示例和章节综合案例,涵盖各种实际应用场景,比如数据清洗、可视化、统计分析和机器学习等,另外第 10 章配置了实战演练。通过这些案例,读者能够深入了解如何在真实世界中应用 Python进行数据分析,并且可以通过实践来巩固所学内容。
    (2)注重全面性。本书不仅深入探讨了 NumPy、pandas、Matplotlib 等数据分析常用库的使用方法,还扩展介绍了数据分析相关领域的知识,比如时间序列分析、文本数据分析、机器学习,使读者能够全面了解数据分析的方法和技巧。