本书内容系统、全面,全书共11章,归结为3部分进行介绍。第1部分主要介绍Python程序设计基础,包括Python的内建数据结构(列表、元组、字典和集合)、Python语句、Python函数、Python面向对象程序设计和Python数据可视化等。第2部分主要介绍Python数据分析基础,包括NumPy工具、Python矩阵运算、Pandas库和Python办公自动化等。第3部分主要介绍Python机器学习算法,包括回归分析、逻辑回归、决策树与随机森林、朴素贝叶斯分类、支持向量机、主成分分析法和K均值聚类等。
本书注重面向对象程序设计基本思想的培养,以数据分析和机器学习为落脚点,从实用性原则出发,将案例与知识点有机结合。书中所有示例均可在Jupyter Notebook编程环境下运行,方便读者进行实操练习。
本书可作为高等院校理工农医类相关专业的Python程序设计Python数据分析Python机器学习等课程的教材,也可作为感兴趣读者的自学读物,并可作为工程技术人员的参考用书。
本书内容系统、全面,注重面向对象程序设计基本思想的培养,以数据分析和机器学习为落脚点,从实用性原则出发,将案例与知识点有机结合。
党的二十大报告指出:教育、科技、人才是全面建设社会主义现代化国家的基础性、战略性支撑。新工科、新文科的建设旨在通过强调跨学科、综合能力和实践能力的培养,以适应日益复杂与多元的社会和经济环境。
当前,随着人工智能、大数据和机器学习的兴起,理工、管理、经济、人文社科类专业本科生迫切需要学习一门计算机语言课程,这门语言要既能进行计算机程序设计,又能方便快速地进行大数据分析和机器学习处理。然而,各高校在相关课程的设置上普遍无法适应这一变化。为落实科教兴国战略、人才强国战略、创新驱动发展战略,开辟发展新领域、新赛道,加强新兴学科、交叉学科建设,不断塑造发展新动能、新优势,编者结合多年教学经验编写了本书。
由于有庞大第三方库的支持,Python语言成为当前数据分析和机器学习的首选程序设计语言。本教材可使理工农医类各专业本科生和研究生学习到Python程序设计、数据处理、人工智能、机器学习等方面的知识,构建数据分析和机器学习的基本知识图谱,为学生在今后工作和学习中解决本学科数据处理和机器学习相关问题提供坚实的基础。
本书在编写过程中坚持以下原则。
(1) 衔接性原则。对于与计算机思维C语言程序设计等课程交叉的共性问题进行简化处理,重点聚焦各专业课程学习中亟须的数组与矩阵运算、数据分析与处理、机器学习基础等内容。
(2) 延伸性原则。注重面向对象程序设计基本思想的培养,使学生充分领悟面向对象程序设计概念、思想和方法。
(3) 连贯性原则。以数据分析和机器学习为落脚点,从实用性原则出发,重点介绍数据分析和机器学习所涉及的Python基础知识。
(4) 适用性原则。对于基础知识的着墨不多,将重点放在案例与知识点相结合上,在案例中学习知识点,在学习知识点中思考案例,使读者快速进入机器学习的世界。
为便于教学,本书提供丰富的配套资源,包括教学大纲、教学课件、程序源码、习题答案、在线作业和微课视频。
资源下载提示
数据文件: 扫描目录上方的二维码下载。
在线作业: 扫描封底的作业系统二维码,登录网站在线做题及查看答案。
微课视频: 扫描封底的文泉云盘防盗码,再扫描书中相应章节的视频讲解二维码,可以在线学习。
本书在编写过程中,得到了昆明理工大学电力工程学院和人文素质教育中心的支持与帮助。本书第1、2章由单节杉编写,第7、8章由沈赋编写,第9章由王健编写,第11章由毕贵红编写,其余章节由蔡子龙编写,全书由毕贵红审稿。另外,研究生李嘉棋、林红娅、杨宇林在程序编写、文字校对、图形制作、PPT制作、习题答案整理等工作上提供了极大的帮助。对于各位同事和同学的辛勤付出,在此一并表示衷心的感谢。
由于编者水平有限,书中难免会有错误和不妥之处,恳请读者批评指正。
编者2025年1月
Python数据分析与机器学习基础(题库·微课视频版)
前言
资源下载
第1部分Python程序设计基础
第1章Python程序设计概述
1.1Python语言的特点
1.1.1Python的优势
1.1.2为什么要学习Python?
1.1.3学习Python可以获得哪些益处?
1.2Python及其集成开发环境的下载与安装
1.2.1Python的下载和安装
1.2.2Python的集成开发环境
1.3Jupyter的使用
1.3.1Python常用快捷键的使用
1.3.2运行第一个Python程序
1.4使用Python进行简单编程
习题1
第2章内建数据结构
2.1列表
2.1.1列表的创建和索引
2.1.2列表元素的增、删、改操作
2.1.3列表的其他操作
2.1.4列表元素的切片
2.1.5列表中几个常用的内置函数
2.1.6列表推导式
2.2元组
2.2.1元组的创建
2.2.2元组的修改与删除
2.2.3元组的其他操作
2.2.4元组的内置函数
2.3字典
2.3.1字典的创建
2.3.2访问字典
2.3.3修改字典
2.3.4字典的操作
2.3.5字典键的特性
2.3.6字典几个常用的内置函数
2.4集合
2.4.1集合的创建
2.4.2集合的基本操作
2.5对象的浅拷贝和深拷贝
习题2
Python数据分析与机器学习基础(题库·微课视频版)
目录
第3章Python语句
3.1输出语句格式控制语句
3.2选择语句
3.3循环语句
3.4while语句
3.5break语句
3.6pass语句
3.7continue语句
3.8二元运算符和比较运算符
习题3
第4章函数
4.1函数的创建和调用
4.2函数的参数传递
4.2.1位置参数
4.2.2默认参数
4.2.3关键字参数
4.2.4变量的作用域
4.3匿名函数
4.4几个常用的函数
4.4.1map函数
4.4.2reduce函数
4.4.3filter函数
4.4.4isinstance函数
4.5关键字yield
4.6Python函数的参数传递机制
4.7Python不定长参数
习题4
第5章面向对象程序设计
5.1类与对象
5.1.1类的定义
5.1.2对象的创建
5.2类的封装
5.3类的继承
5.4类的多态
5.5object类
5.6导入和使用模块
5.6.1自定义模块的定义
5.6.2导入第三方模块
5.6.3以主程序的方式运行
习题5
第6章数据可视化
6.1绘制线图
6.2绘制散点图
6.3多个图形绘制
6.4三维曲面图形绘制
6.5绘制柱状图
6.6绘制直方图
6.7绘制箱形图
6.8绘制热力图
6.9绘制雷达图
习题6
第2部分Python数据分析基础
第7章NumPy基础
7.1数组的创建
7.1.1通过列表创建数组
7.1.2通过aragne方法生成数组
7.1.3直接生成数组
7.1.4特殊数组
7.1.5生成符合某种分布的数组
7.2数组属性
7.3数组的算术运算
7.4数组的索引与切片
7.5数组的转置和转轴
7.6数组的变形
7.7数组的拼接和分裂
7.8数组的排序
7.9数组的比较、布尔数组
7.10数组顺序的打乱
7.11Python文本文件操作
习题7
第8章矩阵运算
8.1矩阵的构造方法
8.1.1使用NumPy生成矩阵
8.1.2特殊矩阵的构造方法
8.2矩阵的基本运算
习题8
第9章数据分析
9.1Series数据结构的创建
9.1.1直接生成Series
9.1.2通过列表生成Series
9.1.3通过字典生成Series
9.1.4Series常用属性
9.1.5Series数据的访问
9.2DataFrame数据结构的创建
9.3DataFrame的常用属性
9.4重建索引和列名
9.4.1重建索引
9.4.2重建列名
9.5Pandas值的查找及增、删、改操作
9.5.1通过loc和iloc进行值的查找
9.5.2Pandas行列值的增加和删除操作
9.5.3Pandas行列值的索引、选择和过滤
9.5.4Pandas数据的切片
9.5.5Pandas行列值的修改
9.6Pandas的算术和数据调整
9.7Pandas数据集的排序
9.8Pandas数据集的聚合操作
9.9缺失值的处理
9.9.1查找缺失值
9.9.2统计缺失值
9.9.3处理缺失值
9.10函数应用与映射
9.11数据集的合并操作
9.12日期和时间的处理
习题9
第10章办公自动化
10.1使用Pandas处理Excel表
10.1.1Excel数据表的导入
10.1.2显示Excel表的内容
10.1.3Excel表数据的修改
10.1.4表格数据的计算和统计
10.1.5表格数据的筛选
10.1.6表格数据作图
10.2xlwings库
10.2.1创建App对象
10.2.2创建Book对象
10.2.3创建sheet对象
10.2.4range对象操作
10.2.5单元格扩展
10.2.6单元格其他格式设置
10.2.7单元格自动填充
10.2.8表格的最大行数和列数的获取
10.2.9工作表内容的复制
10.2.10合并单元格
习题10
第3部分Python机器学习算法
第11章机器学习基础
11.1特征工程
11.1.1特征缩放
11.1.2特征选择
11.1.3特征编码
11.1.4文本特征提取
11.1.5特征生成
11.2回归模型
11.2.1一元线性回归模型
11.2.2多元线性回归模型
11.2.3岭回归模型
11.2.4Lasso回归模型
11.2.5多项式回归模型
11.2.6梯度下降法
11.2.7随机梯度下降法
11.2.8小批量梯度下降法
11.3逻辑回归
11.4决策树和随机森林
11.4.1决策树
11.4.2随机森林
11.5朴素贝叶斯分类
11.5.1多项式朴素贝叶斯分类器
11.5.2补集朴素贝叶斯分类器
11.5.3伯努利贝叶斯分类器
11.5.4高斯贝叶斯分类器
11.6支持向量机
11.7主成分分析法
11.8K均值聚类算法
11.9K近邻算法
习题11
参考文献