封面
版权信息
前言
第1章 Python编程基础
1.1 搭建Python开发环境
1.1.1 安装Python解释器
1.1.2 安装Python第三方开发包
1.1.3 在PyCharm里新建项目和文件
1.1.4 在PyCharm里更换Python解释器
1.2 实践Python基本语法
1.2.1 针对基本数据类型的操作
1.2.2 针对字符串的操作
1.2.3 多行注释与引入中文
1.2.4 条件分支语句
1.2.5 循环操作语句
1.2.6 break和continue的用法
1.2.7 格式化输出语句
1.3 定义和调用函数
1.4 return的重要性——函数的递归调用
1.5 熟悉函数的特殊写法
1.5.1 函数作为参数
1.5.2 函数作为返回结果
1.5.3 匿名函数
1.6 本章小结
第2章 Python的数据结构
2.1 列表
2.1.1 定义列表
2.1.2 在列表中增、删、改元素
2.1.3 列表的切片操作
2.1.4 遍历列表
2.1.5 列表的常见用法
2.2 元组
2.2.1 创建和使用元组
2.2.2 元组的常见用法
2.3 集合
2.3.1 创建和使用集合
2.3.2 针对集合的常用数据操作
2.4 字典
2.4.1 创建和使用字典
2.4.2 增加、删除和修改字典中的元素
2.4.3 遍历字典
2.5 针对数据结构的通用性操作
2.5.1 通过map方法实现序列的映射
2.5.2 filter方法与数据筛选
2.5.3 通过reduce方法实现累计效果
2.5.4 通过sorted方法排序对象
2.6 本章小结
第3章 Python面向对象编程
3.1 什么是面向对象思想
3.2 封装特性
3.2.1 创建类并在类里封装属性和方法
3.2.2 类方法的第一个参数必须指向实例
3.2.3 私有属性的典型错误用法
3.2.4 了解其他常用魔术方法
3.2.5 从私有属性和私有方法体会封装特性
3.3 继承特性
3.3.1 继承的语法和使用场景
3.3.2 子类无法使用父类的私有属性和方法
3.3.3 受保护的属性和方法
3.3.4 多重继承与组合模式
3.4 多态特性
3.4.1 以迭代器为例来理解多态
3.4.2 可变参数与方法重载
3.4.3 整合使用多态和继承
3.5 模块、包以及第三方库
3.5.1 通过import重用现有模块中的功能
3.5.2 自定义包和使用包
3.5.3 引入并使用第三方库
3.6 本章小结
第4章 异常处理机制与文件读写
4.1 通过try…except…finally处理异常
4.1.1 处理异常的try…except从句
4.1.2 使用异常处理类
4.1.3 同时处理多个异常
4.1.4 在处理异常时引入else代码块
4.1.5 引入finally从句
4.2 raise与except的整合使用
4.2.1 通过raise抛出异常
4.2.2 自定义异常且与except整合使用
4.3 异常处理的实践经验
4.3.1 尽可能缩小try的代码块
4.3.2 用专业的异常处理类针对性地处理异常
4.3.3 拿到异常别忽视
4.3.4 合理确定异常的影响范围
4.4 在读写文件案例中使用异常机制
4.4.1 通过os.path获取目录和文件属性
4.4.2 以只读模式打开文件
4.4.3 逐行读取文件
4.4.4 通过write写文件
4.4.5 以添加的方式写文件
4.4.6 读写csv文件
4.5 本章小结
第5章 NumPy数组处理
5.1 NumPy库的基础数据结构:ndarray对象
5.1.1 通过array方法创建ndarray
5.1.2 ndarray的dtype属性
5.1.3 创建全0或全1的ndarray
5.2 NumPy库的常用操作
5.2.1 通过arange方法创建序列数组
5.2.2 针对ndarray的数学运算
5.2.3 常用的科学计算函数
5.2.4 常用的聚合统计函数
5.2.5 遍历ndarray数组
5.3 针对ndarray的索引和切片操作
5.3.1 索引操作
5.3.2 布尔索引与条件过滤
5.3.3 切片操作与共享内存
5.3.4 通过copy函数创建副本
5.4 本章小结
第6章 Pandas数据清洗
6.1 以一维方式存储数据的Series对象
6.1.1 Series的常规操作
6.1.2 创建并使用Series索引
6.1.3 获取Series里的切片数据
6.1.4 通过布尔Series获取满足条件的元素
6.1.5 遍历Series数据
6.2 以表格格式存储数据的DataFrame对象
6.2.1 DataFrame对象的常规用法
6.2.2 通过loc、iloc和ix提取数据
6.2.3 遍历DataFrame里的数据
6.3 面向DataFrame的常用数据分析方法
6.3.1 对DataFrame数据进行排序
6.3.2 以列为单位进行运算
6.3.3 增加和删除列
6.3.4 过滤和重设数据
6.3.5 在DataFrame中进行数据统计分析
6.3.6 衡量变量间关联程度的corr方法
6.4 Pandas与各类文件的交互
6.4.1 DataFrame数据与csv文件的相互转换
6.4.2 NaN与缺失值处理
6.4.3 DataFrame数据与Excel文件的相互转换
6.4.4 DataFrame数据与json文件的相互转换
6.5 本章小结
第7章 Matplotlib数据可视化
7.1 通过Matplotlib绘制各类图形
7.1.1 绘制折线图
7.1.2 绘图时的通用属性参数
7.1.3 绘制柱状图
7.1.4 绘制饼图
7.1.5 绘制直方图
7.2 设置坐标的技巧
7.2.1 设置x和y坐标标签文字并展示中文
7.2.2 设置坐标的范围
7.2.3 设置坐标的主刻度和次刻度
7.2.4 设置并旋转坐标刻度文字
7.3 增加可视化美观效果
7.3.1 设置图例
7.3.2 设置中文标题
7.3.3 设置网格效果
7.4 设置多图和子图效果
7.4.1 通过figure对象同时绘制多张图
7.4.2 通过add_subplot方法绘制子图
7.4.3 通过subplot方法绘制子图
7.4.4 子图共享x坐标轴
7.4.5 在大图里绘制子图
7.5 绘制高级图表
7.5.1 绘制散点图
7.5.2 绘制热图
7.5.3 绘制等值线图
7.6 通过mplot3d绘制三维图形
7.6.1 绘制三维曲线图
7.6.2 绘制三维散点图
7.6.3 绘制三维柱状图
7.7 本章小结
第8章 通过网络爬虫获取数据
8.1 和爬虫有关的HTTP
8.1.1 基于HTTP的请求处理流程
8.1.2 HTTP请求头包含操作系统和浏览器信息
8.1.3 Post和Get请求方法
8.1.4 HTTP常见的状态码
8.2 通过Urllib库获取网页信息
8.2.1 通过request爬取网页
8.2.2 设置超时时间
8.2.3 用URLError处理网络异常
8.2.4 设置header属性来模拟浏览器发送请求
8.3 通过BeautifulSoup提取页面信息
8.3.1 安装BeautifulSoup库
8.3.2 用Tag提取HTML元素和属性
8.3.3 用NavigableString提取元素值
8.3.4 用Comment提取注释
8.3.5 制定规则搜索指定的内容
8.4 通过正则表达式截取信息
8.4.1 查找指定字符串
8.4.2 用通用字符来模糊匹配
8.4.3 通过原子表来定义匹配规则
8.4.4 用findall按匹配规则截取内容
8.5 用Scrapy爬取博客园文章信息
8.5.1 通过Scrapy命令创建爬虫项目
8.5.2 明确爬取目标,制定爬取规则
8.5.3 在Item模块里定义数据模型
8.5.4 生成爬虫文件,定义爬取动作
8.5.5 在pipelines文件里定义数据存储方式
8.5.6 启动爬虫程序,观察运行效果
8.6 本章小结
第9章 数据分析的常用方法
9.1 准备并存储数据
9.1.1 用Pandas_datareader库获取数据
9.1.2 以csv和Excel格式存储数据
9.1.3 准备MySQL环境
9.1.4 在MySQL里存储数据
9.1.5 从数据表里读取数据
9.2 描述性统计
9.2.1 平均数、中位数和百分位数
9.2.2 用箱状图展示分位数
9.2.3 统计极差、方差和标准差
9.3 基于时间序列的统计方法
9.3.1 用rolling方法计算移动平均值
9.3.2 基于时间序列的自相关性分析
9.3.3 基于时间序列的偏自相关性分析
9.3.4 用热力图分析不同时间序列的相关性
9.4 概率分析方法与推断统计
9.4.1 分析收盘价,绘制小提琴图
9.4.2 用直方图来拟合正态分布效果
9.4.3 验证序列是否满足正态分布
9.4.4 参数估计方法
9.4.5 显著性验证
9.5 回归分析方法
9.5.1 构建一元线性回归模型
9.5.2 以多元线性回归模型预测股价
9.6 本章小结
第10章 案例:图书信息的爬取、数据清洗与分词处理
10.1 用Scrapy框架爬取豆瓣网编程图书
10.1.1 准备知识:yield的含义
10.1.2 明确待爬取的目标,创建Scrapy项目
10.1.3 定义图书的数据模型
10.1.4 分析页面结构,实现爬虫功能
10.1.5 存为csv文件
10.1.6 运行爬虫,观察结果
10.2 分析图书数据,绘制可视化图表
10.2.1 用Pandas库的方法清洗数据
10.2.2 出版社出书情况分析
10.2.3 评论数最多和最贵的3本图书
10.2.4 用直方图绘制评分频次
10.2.5 对书名分词,绘制词云
10.3 本章小结
第11章 案例:二手房数据的爬取、清洗与可视化
11.1 用Scrapy框架爬取二手房数据
11.1.1 明确爬取目标,创建Scrapy项目
11.1.2 定义二手房数据模型
11.1.3 分析页面结构,实现爬虫功能
11.1.4 定义pipelines逻辑,把数据存为json文件
11.1.5 运行爬虫程序,把数据存为json格式
11.2 分析二手房数据
11.2.1 清洗数据
11.2.2 对数据进行基本的分析
11.2.3 观察均价和总价的分布情况
11.2.4 用散点图展示关注度与价格、面积的关系
11.2.5 绘制关于二手房标题和地段的词云
11.3 本章小结
第12章 案例:股票数据分析与可视化
12.1 股市指标的分析与可视化
12.1.1 准备股票交易数据
12.1.2 用Matplotlib绘制K线图
12.1.3 用rolling和mean绘制均线
12.1.4 用柱状图描述成交量
12.1.5 加工DataFrame数据,绘制MACD图
12.1.6 绘制CCI图,进一步熟悉DataFrame
12.2 验证常见的股市交易策略
12.2.1 验证基于长短均线的交易策略
12.2.2 验证基于MACD指标的交易策略
12.2.3 验证基于CCI的交易策略
12.3 绘制价格通道
12.3.1 计算并绘制唐奇安通道
12.3.2 计算并绘制布林带通道
12.3.3 计算并绘制鳄鱼组线
12.4 用机器学习方法预测股票
12.4.1 用Lasso和岭回归拟合预测收盘价
12.4.2 用SVM和KNN模型预测涨跌
12.5 本章小结
第13章 基于机器学习算法的数据分析
13.1 数据集与机器学习的基础知识
13.1.1 获取sklearn提供的数据集
13.1.2 训练集、验证集和测试集
13.2 一元和多元线性回归案例
13.2.1 波士顿房价数据集的初步分析
13.2.2 构建波士顿房价的多元线性关系
13.2.3 交叉验证的思想及其实现
13.3 岭回归、Lasso回归及案例
13.3.1 对比线性回归和岭回归
13.3.2 基于岭回归拟合波士顿房价
13.3.3 Lasso回归
13.4 分类算法案例
13.4.1 基于线性和高斯内核的SVM分类器
13.4.2 用SVM分类器划分鸢尾花
13.4.3 基于KNN算法的分类器
13.4.4 KNN分类器对酒的分类
13.4.5 基于逻辑回归的分类方法
13.4.6 用逻辑回归划分鸢尾花
13.5 基于手写体数字识别的分类案例
13.5.1 观察Digits数据集
13.5.2 以训练集和测试集的方式评估结果
13.5.3 对比分类模型的预测和真实结果
13.6 本章小结
更新时间:2020-11-12 17:43:59