Python数据分析与数据可视化 井超 张晓华 乔钢柱
定 价:59.9 元
本书以Python为工具,除了系统介绍Python程序开发之外,还重点介绍了基于Python的数据分析与数据可视化。全书共8章,内容包括:数据分析与数据可视化,Python与数据分析、数据可视化,Python程序设计基础,Python程序设计进阶,用NumPy生成和处理数据,用Pandas分析数据,Scikit-learn机器学习基础,用Matplotlib实现数据可视化。本书通用性较强,适合各类开设数据分析、数据可视化相关课程的高等院校作为教材使用,也适合从事Python数据分析与数据可视化工作的读者作为自学参考教程。
系统介绍数据分析与数据可视化的基本概念、方法、常用工具详解Python四大数据分析核心库:NumPy、Pandas、Scikit-learn、Matplotlib配备丰富的教学资源(教学课件、程序源代码、习题及参考答案、实验指导书)
前 言数据资产作为经济社会数字化转型进程中的新兴资产类型,是国家重要的战略资源。随着数据量的不断增长,海量数据的价值亟待挖掘,由此,数据分析与数据可视化的重要性显而易见。各行各业都对数据分析与数据可视化提出了迫切需求,高校众多专业也纷纷开设数据分析与数据可视化的相关课程。正因为此,笔者将多年教学中积累的素材加以总结,编写了本书。本书以Python为工具,系统介绍了数据分析与数据可视化的基本概念、一般步骤和相关方法,由浅入深地介绍了数据分析与机器学习相关的若干第三方库的使用和编程方法。本书理论结合实际,特别突出了实践特色,能够很好地满足高校数据分析与数据可视化人才培养需求。本书共8章:第1章,数据分析与数据可视化。介绍了数据分析与数据可视化的相关概念、数据分析的一般步骤、常用数据分析方法、数据分析与数据可视化常用工具。第2章,Python与数据分析、数据可视化。介绍了Python这一数据分析与数据可视化的利器、基于Python的数据分析与数据可视化工具(常用的Python第三方库)、使用Python初步上手数据分析。第3、4章分别为Python程序设计基础和Python程序设计进阶,系统介绍了Python语言开发环境的安装与部署以及Python程序设计的相关内容。第5章至第8章分别介绍了NumPy、Pandas、Scikit-learn、Matplotlib这四个主要用于数据分析与数据可视化的Python第三方库的基础编程知识和典型应用案例。本书前4章介绍了数据分析与数据可视化的基础知识和常用方法与工具;第5章至第8章介绍了四个Python第三方库,配合一些基本的数据挖掘算法可以实现完整的数据分析与数据可视化。本书使用的Python版本是Python 3.7.9,配备了教学课件、程序源代码、习题及习题参考答案等教学资源,供读者教学、学习使用。本书通用性较强,适合各类开设数据分析、数据可视化相关课程的高等院校作为教材使用,也适合从事Python数据分析与数据可视化工作的读者作为自学参考教程。本书由张晓华负责编写第3、4章,乔钢柱负责编写第8章,井超负责编写第1、2、5、6、7章。最后,感谢所有在本书写作、出版过程中给予我们帮助的朋友,并热切希望这本书能够对广大读者有所帮助!编 者
井超,高级实验师,现任职于中北大学计算机科学与技术学院数据科学与大数据技术系,主持建设山西省一流课程《Python程序设计基础》,以第二负责人参与建设全国首批国家级一流课程《程序设计基础》,主要研究方向为人工智能辅助代码生成和人工智能辅助教学,已出版教材5部。
目 录前言第1章 数据分析与数据可视化 11.1 数据分析与数据可视化概述 11.1.1 数据、信息与数据分析 11.1.2 数据可视化 11.1.3 数据分析与数据可视化的关系 31.2 数据分析的一般步骤 41.2.1 明确分析目的与框架 41.2.2 数据收集 41.2.3 数据处理 41.2.4 数据分析 41.2.5 数据展现 51.2.6 撰写报告 51.3 常用数据分析方法 51.3.1 聚类分析(Cluster Analysis) 51.3.2 因子分析(Factor Analysis) 51.3.3 相关分析(Correlation Analysis) 51.3.4 对应分析(CorrespondenceAnalysis) 61.3.5 回归分析(Regressive Analysis) 61.3.6 方差分析(Variance Analysis) 61.4 数据分析与数据可视化常用工具 61.4.1 Microsoft Excel 61.4.2 R语言 61.4.3 Python语言 71.4.4 SAS软件 71.4.5 SPSS 71.4.6 专用的数据可视化分析工具 7本章练习 7第2章 Python与数据分析、数据可视化 82.1 数据分析与数据可视化的利器:Python 82.1.1 Python是什么 82.1.2 Python的特点 92.1.3 Python可以做什么 102.2 基于Python的数据分析与数据可视化工具 112.2.1 NumPy库 112.2.2 Pandas库 112.2.3 Matplotlib库 122.2.4 Seaborn 库 122.2.5 Scikit-learn库 122.3 Python数据分析初上手 132.3.1 数据的导入 132.3.2 数据的导出 132.3.3 数据预处理 142.3.4 数据的选择和运算 172.3.5 数据可视化 20本章练习 21第3章 Python程序设计基础 223.1 Python的安装 223.1.1 Python解释器的安装 223.1.2 PyCharm集成开发环境的安装 283.1.3 Python包管理工具pip 343.1.4 Python相关的文件 383.2 Python语法基础 393.2.1 注释 393.2.2 关键字 403.2.3 标识符 413.2.4 内置常量 423.2.5 内置函数 423.3 Python引用 443.3.1 名字空间 443.3.2 模块的导入与使用 463.4 Python的基本数据类型 473.5 Python的运算符与表达式 513.6 Python的代码编写规范 52本章练习 53第4章 Python程序设计进阶 544.1 Python数据结构、程序流程控制、函数与文件 544.1.1 Python数据结构 544.1.2 Python程序流程控制 664.1.3 异常处理 754.1.4 函数 794.1.5 文件 934.2 Python面向对象程序设计 1014.2.1 类 1014.2.2 类方法、实例方法、静态方法 1054.2.3 对象 1094.2.4 封装、继承、多态 1104.2.5 面向对象案例精析 115本章练习 119第5章 用NumPy生成和处理数据 1205.1 NumPy的安装 1205.2 NumPy入门 1205.2.1 数值计算 1205.2.2 是否使用NumPy的运行时间对比 1225.2.3 数组和矩阵计算 1235.3 NumPy数组操作相关函数 1265.4 NumPy数学函数 1305.4.1 NumPy数学函数基础 1305.4.2 NumPy统计函数 1335.4.3 NumPy向量和矩阵函数 1385.5 NumPy数据分类案例 1415.5.1 线性回归的基本概念 1415.5.2 损失函数的设置 1425.5.3 Python程序实现 142本章练习 146第6章 用Pandas分析数据 1476.1 Pandas 1476.1.1 Pandas的由来 1476.1.2 安装Pandas库 1476.2 Series 1506.2.1 创建Series对象 1506.2.2 Series属性 1516.2.3 Series常用方法 1526.2.4 Series对象数据绘图 1536.3 DataFrame 1556.3.1 DataFrame的概念 1556.3.2 创建DataFrame对象 1566.3.3 DataFrame的属性 1576.3.4 DataFrame索引和切片 1596.3.5 DataFrame数据分析 1616.3.6 DataFrame对象数据可视化 1616.4 基于BankMarketing数据集的营销活动分析 1636.4.1 数据集概述和数据结构 1636.4.2 数据的基本信息 1646.4.3 客户数据分析 1646.4.4 营销活动数据分析 1656.4.5 完整代码及运行结果 166本章练习 168第7章 Scikit-learn机器学习基础 1697.1 机器学习的算法和模型 1697.1.1 特征变量和目标变量 1707.1.2 模型训练 1707.1.3 过拟合和欠拟合 1727.1.4 模型性能度量 1737.2 Scikit-learn的功能 1737.2.1 分类 1737.2.2 回归 1737.2.3 聚类 1747.2.4 数据降维 1747.2.5 模型选择 1747.2.6 数据预处理 1747.3 Scikit-learn的常用模块 1747.3.1 安装Scikit-learn 1747.3.2 Scikit-learn常用模块介绍 1757.4 Scikit-learn的使用 1757.4.1 数据集的导入和处理 1757.4.2 数据集切分 1767.4.3 数值数据的标准化 1777.4.4 数值数据的归一化 1787.4.5 核心对象类型:评估器 1797.4.6 高级特性:管道 1797.4.7 模型保存 1807.5 使用Scikit-learn实现线性回归建模 181本章练习 184第8章 用Matplotlib实现数据可视化 1858.1 Matplotlib基础 1858.2 Matplotlib常见绘图属性 1868.2.1 创建绘图区域 1868.2.2 设定绘图参数 1878.2.3 设置字体及子图布局 1888.2.4 其他绘图设置 1898.3 Matplotlib基本绘图 1908.3.1 折线图 1908.3.2 散点图 1918.3.3 双轴图 1928.3.4 条形图 1938.3.5 直方图 1948.3.6 饼图 1968.3.7 箱型图 1968.3.8 泡泡图 1988.3.9 等高线图 1988.3.10 3D曲线图 1998.3.11 3D散点图 2008.3.12 3D等高线图 2018.3.13 3D线框图 2028.3.14 3D曲面图 2038.4 Matplotlib绘制交互式动态图形 2048.4.1 Matplotlib的事件响应 2048.4.2 Matplotlib常用事件 2058.4.3 使用Matplotlib绘制动态图形 2068.5 使用NumPy、Pandas、Matplotlib进行电影数据分析与数据可视化 2118.5.1 获取数据 2118.5.2 绘制电影评分分布图 2128.5.3 绘制电影时长分布图 2138.5.4 统计电影分类 213本章练习 215参考文献 216