---------------------------Python数据分析与挖掘实战(第2版)---------------------------
前言
基础篇
第1章 数据挖掘基础 2
1.1 某知名连锁餐饮企业的困惑 2
1.2 从餐饮服务到数据挖掘 4
1.3 数据挖掘的基本任务 5
1.4 数据挖掘建模过程 5
1.4.1 定义挖掘目标 6
1.4.2 数据取样 6
1.4.3 数据探索 7
1.4.4 数据预处理 8
1.4.5 挖掘建模 8
1.4.6 模型评价 8
1.5 常用数据挖掘建模工具 9
1.6 小结 11
第2章 Python数据分析简介 12
2.1 搭建Python开发平台 14
2.1.1 所要考虑的问题 14
2.1.2 基础平台的搭建 14
2.2 Python使用入门 16
2.2.1 运行方式 16
2.2.2 基本命令 17
2.2.3 数据结构 19
2.2.4 库的导入与添加 24
2.3 Python数据分析工具 26
2.3.1 NumPy 27
2.3.2 SciPy 28
2.3.3 Matplotlib 29
2.3.4 pandas 31
2.3.5 StatsModels 33
2.3.6 scikit-learn 33
2.3.7 Keras 34
2.3.8 Gensim 36
2.4 配套附件使用设置 37
2.5 小结 38
第3章 数据探索 39
3.1 数据质量分析 39
3.1.1 缺失值分析 40
3.1.2 异常值分析 40
3.1.3 一致性分析 44
3.2 数据特征分析 44
3.2.1 分布分析 44
3.2.2 对比分析 48
3.2.3 统计量分析 51
3.2.4 周期性分析 54
3.2.5 贡献度分析 55
3.2.6 相关性分析 58
3.3 Python主要数据探索函数 62
3.3.1 基本统计特征函数 62
3.3.2 拓展统计特征函数 66
3.3.3 统计绘图函数 67
3.4 小结 74
第4章 数据预处理 75
4.1 数据清洗 75
4.1.1 缺失值处理 75
4.1.2 异常值处理 80
4.2 数据集成 80
4.2.1 实体识别 81
4.2.2 冗余属性识别 81
4.2.3 数据变换 81
4.2.4 简单函数变换 81
4.2.5 规范化 82
4.2.6 连续属性离散化 84
4.2.7 属性构造 87
4.2.8 小波变换 88
4.3 数据归约 91
4.3.1 属性归约 91
4.3.2 数值归约 95
4.4 Python主要数据预处理函数 98
4.5 小结 101
第5章 挖掘建模 102
5.1 分类与预测 102
5.1.1 实现过程 103
5.1.2 常用的分类与预测算法 103
5.1.3 回归分析 104
5.1.4 决策树 108
5.1.5 人工神经网络 115
5.1.6 分类与预测算法评价 120
5.1.7 Python分类预测模型特点 125
5.2 聚类分析 125
5.2.1 常用聚类分析算法 126
5.2.2 K-Means聚类算法 127
5.2.3 聚类分析算法评价 132
5.2.4 Python主要聚类分析算法 133
5.3 关联规则 135
5.3.1 常用关联规则算法 136
5.3.2 Apriori算法 136
5.4 时序模式 142
5.4.1 时间序列算法 142
5.4.2 时间序列的预处理 143
5.4.3 平稳时间序列分析 145
5.4.4 非平稳时间序列分析 148
5.4.5 Python主要时序模式算法 156
5.5 离群点检测 159
5.5.1 离群点的成因及类型 160
5.5.2 离群点检测方法 160
5.5.3 基于模型的离群点检测方法 161
5.5.4 基于聚类的离群点检测方法 164
5.6 小结 167
实战篇
第6章 财政收入影响因素分析及预测 170
6.1 背景与挖掘目标 170
6.2 分析方法与过程 171
6.2.1 分析步骤与流程 172
6.2.2 数据探索分析 172
6.2.3 数据预处理 176
6.2.4 模型构建 178
6.3 上机实验 184
6.4 拓展思考 185
6.5 小结 186
第7章 航空公司客户价值分析 187
7.1 背景与挖掘目标 187
7.2 分析方法与过程 188
7.2.1 分析步骤与流程 189
7.2.2 数据探索分析 189
7.2.3 数据预处理 200
7.2.4 模型构建 207
7.2.5 模型应用 212
7.3 上机实验 214
7.4 拓展思考 215
7.5 小结 216
第8章 商品零售购物篮分析 217
8.1 背景与挖掘目标 217
8.2 分析方法与过程 218
8.2.1 数据探索分析 219
8.2.2 数据预处理 224
8.2.3 模型构建 226
8.3 上机实验 232
8.4 拓展思考 233
8.5 小结 233
第9章 基于水色图像的水质评价 234
9.1 背景与挖掘目标 234
9.2 分析方法与过程 235
9.2.1 分析步骤与流程 236
9.2.2 数据预处理 236
9.2.3 模型构建 240
9.2.4 水质评价 241
9.3 上机实验 242
9.4 拓展思考 242
9.5 小结 243
第10章 家用热水器用户行为分析与事件识别 244
10.1 背景与挖掘目标 244
10.2 分析方法与过程 245
10.2.1 数据探索分析 246
10.2.2 数据预处理 249
10.2.3 模型构建 260
10.2.4 模型检验 261
10.3 上机实验 262
10.4 拓展思考 264
10.5 小结 265
第11章 电子商务网站用户行为分析及服务推荐 266
11.1 背景与挖掘目标 266
11.2 分析方法与过程 267
11.2.1 分析步骤与流程 267
11.2.2 数据抽取 269
11.2.3 数据探索分析 270
11.2.4 数据预处理 279
11.2.5 构建智能推荐模型 283
11.3 上机实验 291
11.4 拓展思考 293
11.5 小结 293
第12章 电商产品评论数据情感分析 294
12.1 背景与挖掘目标 294
12.2 分析方法与过程 295
12.2.1 评论预处理 296
12.2.2 评论分词 297
12.2.3 构建模型 303
12.3 上机实验 315
12.4 拓展思考 316
12.5 小结 318
提高篇
第13章 基于Python引擎的开源数据挖掘建模平台(TipDM) 320
13.1 平台简介 321
13.1.1 模板 321
13.1.2 数据源 322
13.1.3 工程 323
13.1.4 系统组件 324
13.1.5 TipDM数据挖掘建模平台的本地化部署 326
13.2 快速构建数据挖掘工程 327
13.2.1 导入数据 329
13.2.2 配置输入源组件 331
13.2.3 配置缺失值处理组件 332
13.2.4 配置记录选择组件 334
13.2.5 配置数据标准化组件 334
13.2.6 配置K-Means组件 336
13.3 小结 339
---------------------------Python金融大数据挖掘与分析全流程详解---------------------------
前言
如何获取学习资源
第1章 Python基础
1.1 Python安装与第一个Python程序12
1.1.1 安装Python12
1.1.2 编写第一个Python程序13
1.1.3 PyCharm的安装与使用14
1.2 Python基础知识18
1.2.1 变量、行、缩进与注释18
1.2.2 数据类型:数字与字符串20
1.2.3 数据类型:列表与字典、元组与集合22
1.2.4 运算符27
1.3 Python语句29
1.3.1 if条件语句29
1.3.2 for循环语句30
1.3.3 while循环语句31
1.3.4 try/except异常处理语句32
1.4 函数与库33
1.4.1 函数的定义与调用33
1.4.2 函数的返回值与作用域34
1.4.3 常用基本函数介绍36
1.4.4 库38
第2章 金融数据挖掘之爬虫技术基础
2.1 爬虫技术基础1—网页结构基础41
2.1.1 查看网页源代码—F12键41
2.1.2 查看网页源代码—右键菜单43
2.1.3 网址构成及http与https协议44
2.1.4 网页结构初步了解44
2.2 爬虫技术基础2—网页结构进阶44
2.2.1 HTML基础知识1—我的第一个网页45
2.2.2 HTML基础知识2—基础结构45
2.2.3 HTML基础知识3—标题、段落、链接46
2.2.4 HTML基础知识4—区块49
2.2.5 HTML基础知识5—类与id49
2.3 初步实战—百度新闻源代码获取50
2.3.1 获取网页源代码51
2.3.2 分析网页源代码信息53
2.4 爬虫技术基础3—正则表达式54
2.4.1 正则表达式基础1—findall()函数54
2.4.2 正则表达式基础2—非贪婪匹配之(.*)55
2.4.3 正则表达式基础3—非贪婪匹配之.*57
2.4.4 正则表达式基础4—自动考虑换行的修饰符re.S60
2.4.5 正则表达式基础5—知识点补充61
第3章 金融数据挖掘案例实战1
3.1 提取百度新闻标题、网址、日期及来源63
3.1.1 获取网页源代码63
3.1.2 编写正则表达式提取新闻信息63
3.1.3 数据清洗并打印输出65
3.2 批量获取多家公司的百度新闻并生成数据报告68
3.2.1 批量爬取多家公司的百度新闻68
3.2.2 自动生成舆情数据报告文本文件69
3.3 异常处理及24小时实时数据挖掘实战71
3.3.1 异常处理实战72
3.3.2 24小时实时爬取实战72
3.4 按时间顺序爬取及批量爬取多页内容74
3.4.1 按时间顺序爬取百度新闻74
3.4.2 一次性批量爬取多页内容75
3.5 搜狗新闻与新浪财经数据挖掘实战78
3.5.1 搜狗新闻数据挖掘实战78
3.5.2 新浪财经数据挖掘实战82
第4章 数据库详解及实战
4.1 MySQL数据库简介及安装86
4.2 MySQL数据库基础89
4.2.1 MySQL数据库管理平台phpMyAdmin介绍89
4.2.2 创建数据库及数据表90
4.2.3 数据表基本操作92
4.3 Python与MySQL数据库的交互96
4.3.1 安装PyMySQL库96
4.3.2 用Python连接数据库96
4.3.3 用Python存储数据到数据库97
4.3.4 用Python在数据库中查找并提取数据101
4.3.5 用Python从数据库中删除数据102
4.4 案例实战:把金融数据存入数据库103
第5章 数据清洗优化及数据评分系统搭建
5.1 深度分析—数据去重及清洗优化105
5.1.1 数据去重105
5.1.2 常见的数据清洗手段及日期格式统一107
5.1.3 文本内容深度过滤—剔除噪声数据108
5.2 数据乱码的处理110
5.2.1 编码分析111
5.2.2 重新编码及解码112
5.2.3 解决乱码问题的经验方法114
5.3 舆情数据评分系统搭建115
5.3.1 舆情数据评分系统版本1—根据标题评分115
5.3.2 舆情数据评分系统版本2—根据正文内容评分117
5.3.3 舆情数据评分系统版本3—解决乱码问题118
5.3.4 舆情数据评分系统版本4—处理非相关信息119
5.4 完整的百度新闻数据挖掘系统搭建121
5.4.1 将舆情数据评分存入数据库121
5.4.2 百度新闻数据挖掘系统代码整合123
5.4.3 从数据库汇总每日评分127
第6章 数据分析利器:NumPy与pandas库
6.1 NumPy库基础129
6.1.1 NumPy库与数组129
6.1.2 创建数组的几种方式131
6.2 pandas库基础132
6.2.1 二维数据表格DataFrame的创建与索引的修改133
6.2.2 Excel工作簿等文件的读取和写入137
6.2.3 数据的读取与编辑139
6.2.4 数据表的拼接144
6.3 利用pandas库导出舆情数据评分147
6.3.1 汇总舆情数据评分148
6.3.2 导出舆情数据评分表格150
第7章 数据可视化与数据相关性分析
7.1 用Tushare库调取股价数据152
7.1.1 Tushare库的基本用法152
7.1.2 匹配舆情数据评分与股价数据154
7.2 舆情数据评分与股价数据的可视化155
7.2.1 数据可视化基础156
7.2.2 数据可视化实战160
7.3 舆情数据评分与股价数据相关性分析162
7.3.1 皮尔逊相关系数162
7.3.2 相关性分析实战164
第8章 金融数据挖掘之爬虫技术进阶
8.1 爬虫技术进阶1—IP代理简介165
8.1.1 IP代理的工作原理165
8.1.2 IP代理的使用方法166
8.2 爬虫技术进阶2—Selenium库详解169
8.2.1 网络数据挖掘的难点169
8.2.2 模拟浏览器ChromeDriver的下载与安装170
8.2.3 Selenium库的安装172
8.2.4 Selenium库的使用173
第9章 金融数据挖掘案例实战2
9.1 新浪财经股票实时数据挖掘实战180
9.1.1 获取网页源代码180
9.1.2 数据提取181
9.2 东方财富网数据挖掘实战182
9.2.1 获取网页源代码183
9.2.2 编写正则表达式提取数据183
9.2.3 数据清洗及打印输出185
9.2.4 函数定义及调用185
9.3 裁判文书网数据挖掘实战186
9.4 巨潮资讯网数据挖掘实战188
9.4.1 获取网页源代码189
9.4.2 编写正则表达式提取数据190
9.4.3 数据清洗及打印输出191
9.4.4 函数定义及调用191
第10章 通过PDF文本解析上市公司理财公告
10.1 PDF文件批量下载实战193
10.1.1 爬取多页内容193
10.1.2 自动筛选所需内容197
10.1.3 理财公告PDF文件的自动批量下载199
10.2 PDF文本解析基础203
10.2.1 用pdfplumber库提取文本内容203
10.2.2 用pdfplumber库提取表格内容204
10.3 PDF文本解析实战—寻找合适的理财公告206
10.3.1 遍历文件夹里所有的PDF文件207
10.3.2 批量解析每一个PDF文件209
10.3.3 将合格的PDF文件自动归档209
第11章 邮件提醒系统搭建
11.1 用Python自动发送邮件213
11.1.1 通过腾讯QQ邮箱发送邮件213
11.1.2 通过网易163邮箱发送邮件215
11.1.3 发送HTML格式的邮件216
11.1.4 发送邮件附件218
11.2 案例实战:定时发送数据分析报告221
11.2.1 用Python提取数据并发送数据分析报告邮件221
11.2.2 用Python实现每天定时发送邮件226
第12章 基于评级报告的投资决策分析
12.1 获取券商研报网站的表格数据229
12.1.1 表格数据的常规获取方法229
12.1.2 用Selenium库爬取和讯研报网表格数据232
12.2 pandas库的高阶用法235
12.2.1 重复值和缺失值处理235
12.2.2 用groupby()函数分组汇总数据238
12.2.3 用pandas库进行批量处理240
12.3 评估券商分析师预测准确度244
12.3.1 读取分析师评级报告数据进行数据预处理244
12.3.2 用Tushare库计算股票收益率247
12.3.3 计算平均收益率并进行分析师预测准确度排名251
12.4 策略延伸253
12.4.1 涨停板的考虑253
12.4.2 按分析师查看每只股票的收益率254
12.4.3 计算多阶段股票收益率255
第13章 用Python生成Word文档
13.1 用Python创建Word文档的基础知识257
13.1.1 初识python-docx库257
13.1.2 python-docx库的基本操作258
13.2 用Python创建Word文档的进阶知识261
13.2.1 设置中文字体261
13.2.2 在段落中新增文字261
13.2.3 设置字体大小及颜色262
13.2.4 设置段落格式264
13.2.5 设置表格样式267
13.2.6 设置图片样式268
13.3 案例实战:自动生成数据分析报告Word文档269
第14章 基于股票信息及其衍生变量的数据分析
14.1 策略基本思路274
14.2 获取股票基本信息及衍生变量数据275
14.2.1 获取股票基本信息数据275
14.2.2 获取股票衍生变量数据279
14.2.3 通过相关性分析选取合适的衍生变量282
14.2.4 数据表优化及代码汇总283
14.3 数据可视化呈现285
14.4 用xlwings库生成Excel工作簿287
14.4.1 xlwings库的基本用法287
14.4.2 案例实战:自动生成Excel工作簿报告290
14.5 策略深化思路292
第15章 云服务器部署实战
15.1 云服务器的购买与配置295
15.2 程序的云端部署298
15.2.1 安装运行程序所需的软件299
15.2.2 实现程序24小时不间断运行299
第16章 机器学习之客户违约预测模型搭建
16.1 机器学习在金融领域的应用300
16.2 决策树模型的基本原理300
16.2.1 决策树模型简介300
16.2.2 决策树模型的建树依据301
16.3 案例实战:客户违约预测模型搭建303
16.3.1 模型搭建303
16.3.2 模型预测及评估306
16.3.3 模型可视化呈现311
---------------------------Python金融数据分析---------------------------
前言
第1章Python在金融中的应用
11Python适合我吗
111免费+开源
112高级、强大、灵活的编程语言
113丰富的标准库
12面向对象编程与函数式编程
121面向对象式方法
122函数式方法
123我该使用哪种方法
13我该使用哪个版本的Python
14IPython简介
141安装IPython
142使用pip
143IPython Notebook
144Notebook单元格
145IPython Notebook简单的练习
146Notebook与金融
15总结
第2章金融中的线性问题
21资本资产定价模型与证券市场线
22套利定价模型
23因子模型的多元线性回归
24线性最优化
241安装PuLP
242一个简单的线性优化问题
243线性规划的结果
244整数规划
25使用矩阵解线性方程组
26LU分解
27Cholesky分解
28QR分解
29总结
第3章非线性与金融
31非线性建模
32非线性模型举例
321隐含波动率模型
322马尔可夫机制转换模型
323门限自回归模型
324平滑转换模型
33非线性模型求根算法概述
34增量法
35二分法
36牛顿迭代法
37割线法
38求根法的结合使用
39利用SciPy求解
391SciPy求根标量函数
392通用非线性求解器
310总结
第4章利用数值方法为衍生品定价
41什么是期权
42二叉树期权定价模型
421欧式期权定价
422编写StockOption类
423编写BinomialEuropeanOption类
424利用BinomialTreeOption类给美式期权定价
425CoxRossRubinstein模型
426LeisenReimer模型
43希腊值
44三叉树期权定价模型
45期权定价中的Lattice方法
451二叉树网格
452编写BinomialCRROption类
453三叉树网格
46有限差分法
461显式方法
462隐式方法
463CrankNicolson方法
464奇异障碍期权定价
465美式期权定价的有限差分
47隐含波动率模型
48总结
第5章利率及其衍生工具
51固定收益证券
52收益率曲线
53无息债券
54自助法构建收益率曲线
55远期利率
56计算到期收益率
57计算债券定价
58久期
59凸度
510短期利率模型
5101Vasicek模型
5102CoxIngersollRoss模型
5103Rendleman and Bartter模型
5104Brennan and Schwartz模型
511债券期权
5111可赎回债券
5112可回售债券
5113可转换债券
5114优先股
512可赎回债券定价
5121Vasicek模型定价无息债券
5122提前行权定价
5123有限差分策略迭代法
5124可赎回债券定价的其他影响因素
513总结
第6章利用Python分析欧洲斯托克 50指数波动率
61波动率指数衍生品
611STOXX与欧洲期货交易所
612EURO STOXX 50指数
613VSTOXX
614VIX
62获取EUROX STOXX 50指数和VSTOXX数据
63数据合并
64SX5E与V2TX的财务分析
65SX5E与V2TX的相关性
66计算VSTOXX子指数
661获取OESX数据
662计算VSTOXX子指数的公式
663VSTOXX子指数值的实现
664分析结果
67计算VSTOXX主指数
68总结
第7章大数据分析
71什么是大数据
72Hadoop
721HDFS
722YARN
723MapReduce
73大数据工具对我来说实用吗
74获取Apache Hadoop
741从Cloudera获取QuickStart VM
742获取VirtualBox
743在VirtualBox上运行Cloudera VM
75Hadoop中的字计数程序
751下载示例数据
752map程序
753reduce程序
754测试脚本
755在Hadoop上运行MapReduce
756使用Hue浏览HDFS
76Hadoop的金融实践
761从Yahoo! Finance获取IBM股票价格
762修改map程序
763使用IBM股票价格测试map程序
764运行MapReduce计算日内价格变化
765分析MapReduce结果
77NoSQL简介
771获取MongoDB
772创建数据目录并运行MongoDB
773获取PyMongo
774运行测试连接
775获取数据库
776获取集合
777插入文档
778获取单个文档
779删除文档
7710批量插入文档
7711统计集合文档
7712查找文档
7713文档排序
7714结论
78总结
第8章算法交易
81什么是算法交易
82带有公共API的交易平台列表
83有没有最好的编程语言
84系统功能
85通过Interactive Brokers和IbPy进行算法交易
851获取Interactive Brokers的Trader WorkStation
852获取IbPy——IB API包装器
853指令路由机制
86构建均值回归算法交易系统
861设置主程序
862处理事件
863实现均值回归算法
864跟踪头寸
87使用OANDA API进行外汇交易
871什么是REST
872设置OANDA账户
873OANDA API使用方法
874获取oandapy——OAND AREST API包装器
875获取并解析汇率数据
876发送指令
88构建趋势跟踪外汇交易平台
881设置主程序
882处理事件
883实现趋势跟踪算法
884跟踪头寸
89风险价值模型
810总结
第9章回溯测试
91回溯测试概述
911回溯测试的缺陷
912事件驱动回溯测试系统
92设计并实施回溯测试系统
921TickData类
922MarketData类
923MarketDataSource类
924Order类
925Position类
926Strategy类
927MeanReverting Strategy类
928Backtester类
929运行回溯测试系统
9210改进回溯测试系统
93回溯测试模型的10个注意事项
931模型的资源限制
932模型评价标准
933估计回溯测试参数的质量
934应对模型风险
935样本数据回测
936解决回溯测试的常见缺陷
937常识错误
938理解模型环境
939数据准确性
9310数据挖掘
94回溯测试中的算法选择
941k均值聚类算法
942KNN机器学习算法
943分类回归树分析
9442k析因设计
945遗传算法
95总结
第10章Python与Excel的融通
101COM概述
102Excel与金融
103构建COM服务器
1031先决条件
1032获取pythoncom模块
1033构建BlackScholes模型COM服务器
1034注册和注销COM服务器
1035构建CoxRossRubinstein模型COM服务器
1036构建三叉网格模型COM服务器
104在Excel中构建COM客户端
1041设置VBA代码
1042设置单元格
105COM的其他功能
106总结