译者序 前言 第1章 Python 3简介1 1.1 Python相关工具与安装1 1.1.1 Python相关工具1 1.1.2 安装Python3 1.1.3 设置PATH环境变量(仅Windows)3 1.2 Python编程基础3 1.2.1 Python交互式解释器3 1.2.2 Python基础语法4 1.2.3 以模块形式保存代码6 1.2.4 Python中的一些标准模块7 1.2.5 help(?)和dir(?)函数7 1.2.6 编译时和运行时的代码检查8 1.3 Python中的简单数据类型9 1.3.1 数字9 1.3.2 字符串12 1.3.3 处理日期19 1.4 Python中的异常处理21 1.4.1 处理用户输入22 1.4.2 命令行参数24 1.5 小结25 第2章 条件逻辑、循环和函数26 2.1 Python中的条件逻辑26 2.1.1 Python的保留关键字27 2.1.2 Python运算符的优先级28 2.1.3 比较运算符和布尔运算符28 2.2 Python中的变量和参数29 2.2.1 局部变量和全局变量29 2.2.2 变量的作用域29 2.2.3 引用传递和值传递31 2.2.4 实参和形参31 2.3 在Python中使用循环32 2.3.1 Python中的for循环32 2.3.2 Python中的while循环39 2.4 Python中的用户自定义函数41 2.4.1 ��函数中设定默认值42 2.4.2 具有可变参数的函数42 2.4.3 lambda表达式43 2.5 递归44 2.5.1 计算阶乘值44 2.5.2 计算斐波那契数45 2.5.3 计算两个数的公约数45 2.5.4 计算两个数的小公倍数46 2.6 小结47 第3章 Python数据类型48 3.1 列表48 3.1.1 列表和基本操作48 3.1.2 列表中的表达式53 3.1.3 连接字符串列表53 3.1.4 Python中的range(?)函数54 3.1.5 数组和append(?)函数55 3.1.6 使用列表和split(?)函数56 3.1.7 对列表中的单词计数56 3.1.8 遍历成对的列表57 3.1.9 其他与列表相关的函数57 3.1.10 栈和队列59 3.1.11 使用向量60 3.1.12 使用矩阵61 3.1.13 使用NumPy库处理矩阵61 3.2 元组(不可变列表)62 3.3 集合63 3.4 字典64 3.4.1 创建字典及字典中的基本操作65 3.4.2 字典的相关函数和方法67 3.4.3 字典的格式67 3.4.4 有序字典67 3.5 Python中的其他数据类型68 3.5.1 Python中的其他序列类型68 3.5.2 Python中的可变类型和不可变类型69 3.5.3 type(?)函数70 3.6 小结70 第4章 NumPy和Pandas介绍71 4.1 NumPy71 4.1.1 NumPy简介71 4.1.2 NumPy数组72 4.1.3 使用NumPy数组的示例73 4.2 子范围77 4.2.1 使用向量的“-1”子范围77 4.2.2 使用数组的“-1”子范围77 4.3 NumPy中其他有用的方法78 4.3.1 数组和向量操作79 4.3.2 NumPy和点积79 4.3.3 NumPy和向量的“范数”80 4.3.4 NumPy和向量的乘积81 4.3.5 NumPy和reshape(?)方法82 4.3.6 计算均值和标准差83 4.4 Pandas84 4.5 Pandas DataFrame的各种操作89 4.5.1 合并Pandas DataFrame89 4.5.2 使用Pandas DataFrame进行数据操作90 4.5.3 Pandas DataFrame和CSV文件93 4.5.4 Pandas DataFrame和Excel电子表格95 4.5.5 选择、添加和删除DataFrame中的列96 4.5.6 Pandas DataFrame和散点图97 4.5.7 Pandas DataFrame和简单统计98 4.5.8 Pandas中简单有用的命令98 4.6 小结100 第5章 机器学习101 5.1 什么是机器学习101 5.1.1 机器学习算法的类型103 5.1.2 特征工程、特征选择和特征提取105 5.1.3 降维106 5.2 使用数据集107 5.2.1 训练数据与测试数据108 5.2.2 什么是交叉验证108 5.2.3 正则化108 5.2.4 偏差-方差的权衡109 5.2.5 模型性能的衡量指标109 5.3 线性回归111 5.3.1 线性回归与曲线拟合112 5.3.2 何时的解是准确值112 5.3.3 什么是多元分析112 5.3.4 其他类型的回归113 5.3.5 平面中对直线的处理(选读)113 5.4 求解线性回归问题的示例116 5.4.1 使用NumPy和Matplotlib绘制散点图116 5.4.2 MSE119 5.4.3 Keras的线性回归123 5.5 小结126 第6章 机器学习中的分类器127 6.1 分类器127 6.1.1 什么是分类127 6.1.2 线性分类器129 6.1.3 kNN129 6.1.4 决策树130 6.1.5 随机森林133 6.1.6 支持向量机134 6.1.7 贝叶斯分类器134 6.1.8 训练分类器136 6.1.9 评估分类器137 6.2 激活函数137 6.2.1 什么是激活函数137 6.2.2 常见的激活函数139 6.2.3 ReLU和ELU激活函数140 6.2.4 sigmoid、softmax和tanh的相似之处141 6.2.5 sigmoid、softmax和hardmax的区