-
内容大纲
本书是“鸢尾花数学大系—从加减乘除到机器学习”丛书的第一册,也是“编程”板块的第一册,着重介绍如何零基础入门学Python编程。虽然本书主要讲解Python编程,但是也离不开数学。本书尽量避免讲解数学概念公式,而且用图形和近乎口语化的语言描述程序设计、数据分析、机器学习背后常用的数学思想。
本书分为预备、语法、绘图、数组、数据、数学、机器学习、应用八大板块,共36章,内容“跨度”极大!从Python基本编程语法,到基本可视化工具,再到各种数据操作工具,还介绍常用Python实现的各种复杂数学运算,进入数据分析和机器学习之后,还讲解如何搭建应用App。我们可以把本书看作从Python编程角度对“鸢尾花书”全系内容的总览。
本书提供代码示例和讲解,而且提供习题,每章还配套Jupyter Notebook代码文件(Jupyter Notebook不是可有可无的,而是学习生态的关键一环,“鸢尾花书”强调在JupyterLab自主探究学习才能提高大家编程技能)。本书配套微课也主要以配套Jupyter Notebooks为核心,希望读者边看视频,边动手练习。
本书读者群包括所有试图用编程解决问题的朋友,尤其适用于初级程序员进阶、高级数据分析师、机器学习开发者。 -
作者介绍
姜伟生,博士,勤奋的小镇做题家,热爱知识可视化和开源分享。自2022年8月开始,在GitHub上开源“鸢尾花书”学习资源,截至2023年5月,已经分享3000多页PDF、3000多幅矢量图、约1000个代码文件,全球读者数以万计。 -
目录
绪论
第1章 聊聊“巨蟒”
1.1 Python?巨蟒
1.2 Python和可视化有什么关系
1.3 Python和数学有什么关系
1.4 Python和机器学习有什么关系
1.5 相信“反复+精进”的力量!
第2章 安装使用Anaconda
2.1 集成开发环境
2.2 如何安装Anaconda
2.3 测试JupyterLab
2.4 查看Python第三方库版本号
2.5 安装、更新、卸载Python第三方库
第3章 JupyterLab,用起来!
3.1 什么是JupyterLab
3.2 使用JupyterLab:立刻用起来
3.3 快捷键:这一章可能最有用的内容
3.4 什么是LaTeX
3.5 字母和符号
3.6 用LaTex写公式
第4章 Python语法,边学边用
4.1 Python也有语法
4.2 注释:不被执行,却很重要
4.3 缩进:四个空格,标识代码块
4.4 变量:一个什么都能装的箱子
4.5 使用import导入包
4.6 Pythonic:Python风格
第5章 Python数据类型
5.1 数据类型有哪些
5.2 数字:整数、浮点数、复数
5.3 字符串:用引号定义的文本
5.4 列表:存储多个元素的序列
5.5 其他数据类型:元组、集合、字典
5.6 矩阵、向量:线性代数概念
第6章 Python常见运算
6.1 几类运算符
6.2 算术运算符
6.3 比较运算符
6.4 逻辑运算符
6.5 赋值运算符
6.6 成员运算符
6.7 身份运算符
6.8 优先级
6.9 聊聊math库
6.10 聊聊random库和statistics库
第7章 Python控制结构
7.1 什么是控制结构?
7.2 条件语句:相当于开关
7.3 for循环语句
7.4 列表生成式
7.5 迭代器itertools
第8章 Python函数
8.1 什么是Python函数
8.2 自定义函数
8.3 更多自定义线性代数函数
8.4 递归函数:自己反复调用自己
8.5 位置参数、关键字参数
8.6 使用*args和**kwargs
8.7 匿名函数
8.8 构造模块、库
8.9 模仿别人的代码
第9章 Python面向对象编程
9.1 什么是面向对象编程
9.2 定义属性
9.3 定义方法
9.4 装饰器
9.5 父类、子类
第10章 聊聊可视化
10.1 解剖一幅图
10.2 使用Matplotlib绘制线图
10.3 图片美化
10.4 使用Plotly绘制线图
第11章 二维和三维可视化
11.1 二维可视化方案
11.2 二维散点图
11.3 二维等高线图
11.4 热图
11.5 三维可视化方案
11.6 三维散点图
11.7 三维线图
11.8 三维网格曲面图
11.9 三维等高线图
11.10 箭头图
第12章 Seaborn可视化数据
12.1 Seaborn:统计可视化利器
12.2 一元特征数据
12.3 二元特征数据
12.4 多元特征数据
第13章 聊聊NumPy
13.1 什么是NumPy
13.2 手动构造数组
13.3 生成数列
13.4 生成网格数据
13.5 特殊数组
13.6 随机数
13.7 数组导入、导出
第14章 NumPy索引和切片
14.1 什么是索引、切片
14.2 一维数组索引、切片
14.3 视图vs副本
14.4 二维数组索引、切片
第15章 NumPy常见运算
15.1 加、减、乘、除、乘幂
15.2 广播原则
15.3 统计运算
15.4 常见函数
第16章 NumPy数组规整
16.1 从reshape()函数说起
16.2 一维数组→行向量、列向量
16.3 一维数组→二维数组
16.4 一维数组→三维数组
16.5 视图vs副本
16.6 转置
16.7 扁平化
16.8 旋转、翻转
16.9 堆叠
16.10 重复
16.11 分块矩阵
第17章 NumPy线性代数
17.1 NumPy的linalg模块
17.2 拆解矩阵
17.3 向量运算
17.4 矩阵运算
17.5 几个常见矩阵分解
第18章 NumPy爱因斯坦求和约定
18.1 什么是爱因斯坦求和约定?
18.2 二维数组求和
18.3 转置
18.4 矩阵乘法
18.5 一维数组
18.6 方阵
18.7 统计运算
第19章 聊聊Pandas
19.1 什么是Pandas
19.2 创建数据帧:从字典、列表、NumPy数组
19.3 数据帧操作:以鸢尾花数据为例
19.4 四则运算:各列之间
19.5 统计运算:聚合、降维、压缩、折叠
19.6 时间序列:按时间顺序排列的数据
第20章 Pandas快速可视化
20.1 Pandas的可视化功能
20.2 线图:pandas.DataFrame.plot()
20.3 散点图
20.4 柱状图
20.5 箱型图
20.6 直方图和核密度估计曲线
第21章 Pandas索引和切片
21.1 数据帧的索引和切片
?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
??
21.2 提取特定列
21.3 提取特定行
21.4 提取特定元素
21.5 条件索引
21.6 多层索引
21.7 时间序列数据帧索引和切片
第22章 Pandas规整
22.1 Pandas数据帧规整
22.2 拼接:pandas.concat()
22.3 合并:pandas.join()
22.4 合并:pandas.merge()
22.5 长格式转换为宽格式:pivot()
22.6 宽格式转换为长格式:stack()
22.7 长格式转换为宽格式:unstack()
22.8 分组聚合:groupby()
22.9 自定义操作:apply()
第23章 Plotly统计可视化
23.1 Plotly常见可视化方案:以鸢尾花数据为例
23.2 增加一组分类标签
23.3 两组标签:两个维度
23.4 可视化比例:柱状图、饼图
23.5 钻取:多个层次之间的导航和探索
23.6 太阳爆炸图:展示层次结构
23.7 增加第三切割维度
23.8 平均值的钻取:全集vs子集
第24章 Pandas时间序列数据
24.1 什么是时间序列
24.2 缺失值:用NaN表示
24.3 移动平均:一种平滑技术
24.4 收益率:相对涨跌
24.5 统计分析:均值、波动率等
24.6 相关性:也可以随时间变化
第25章 SymPy符号运算
25.1 什么是SymPy
25.2 代数
25.3 线性代数
第26章 SciPy数学运算
26.1 什么是SciPy?
26.2 距离
26.3 插值
26.4 高斯分布
第27章 Statsmodels统计模型
27.1 什么是Statsmodels
27.2 二维散点图+椭圆
27.3 最小二乘线性回归
27.4 主成分分析
27.5 概率密度估计:高斯KDE
第28章 Scikit-Learn机器学习
28.1 什么是机器学习
28.2 有标签数据、无标签数据
28.3 回归:找到自变量与因变量关系
28.4 降维:降低数据维度,提取主要特征
28.5 分类:针对有标签数据
28.6 聚类:针对无标签数据
28.7 什么是Scikit-Learn
第29章 Scikit-Learn数据
29.1 Scikit-Learn中有关数据的工具
29.2 样本数据集
29.3 生成样本数据
29.4 特征缩放
29.5 处理缺失值
29.6 处理离群值
29.7 训练集vs测试集
第30章 Scikit-Learn回归
30.1 聊聊回归
30.2 一元线性回归
30.3 二元线性回归
30.4 多项式回归
30.5 正则化:抑制过度拟合
第31章 Scikit-Learn降维
31.1 降维
31.2 主成分分析
31.3 两特征PCA
31.4 三特征PCA
第32章 Scikit-Learn分类
32.1 什么是分类?
32.2 k最近邻分类:近朱者赤,近墨者黑
32.3 高斯朴素贝叶斯分类:贝叶斯定理的应用
32.4 支持向量机:间隔最大化
32.5 核技巧:数据映射到高维空间
第33章 Scikit-Learn聚类
33.1 聚类
33.2 K均值聚类
33.3 高斯混合模型
第34章 了解一下Spyder
34.1 什么是Spyder
34.2 Spyder用起来
34.3 快捷键:这章可能最有用的内容
第35章 Streamlit搭建Apps
35.1 什么是Streamlit?
35.2 显示
35.3 可视化
35.4 输入工具
35.5 App布局
第36章 Streamlit搭建机器学习Apps
36.1 搭建应用App:编程+数学+可视化+机器学习
36.2 一元高斯分布
36.3 二元高斯分布
36.4 三元高斯分布
36.5 多项式回归
36.6 主成分分析
36.7 k最近邻分类
36.8 支持向量机+高斯核
36.9 高斯混合模型聚类
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
