数据科学实战手册(第2版) 作 者: [印度] 普拉罕·塔塔(Prabhanjan Tattar) 著,刘旭华,李晗,闫晗 译 出版时间: 2019
内容简介 本书对想学习数据分析的人来说是一本非常实用的参考书,书中有多个真实的数据分析案例,几乎是以手把手的方式教你一步一步地完成从数据分析的准备到分析结果报告的整个流程。无论是数据分析工作的从业者,还是有志于未来从事数据分析工作的在校大学生,都能从本书中获取一些新知识、新思想。同时,本书也是一本学习和提高R及Python编程的参考书。很多人有这样的感触,单纯地学习编程语言是很枯燥的过程,但利用本书学习R和Python语言可以很好地解决这个问题,生动实用的数据集以及非常有意思的分析结果会极大地激发读者学习的兴趣。本书案例包括汽车数据分析、税收数据分析、就业数据分析、股市数据分析、社交网络分析、大规模电影推荐、Twitter数据分析、新西兰海外游客预测分析以及德国信用数据分析等。
第 1章 准备数据科学环境 1 1.1 理解数据科学管道 2 1.1.1 操作流程 2 1.1.2 工作原理 3 1.2 在Windows、Mac OS X和Linux上安装R 4 1.2.1 准备工作 4 1.2.2 操作流程 4 1.2.3 工作原理 6 1.3 在R和RStudio中安装扩展包 6 1.3.1 准备工作 6 1.3.2 操作流程 6 1.3.3 工作原理 8 1.3.4 更多内容 8 1.4 在Linux和Mac OS X上安装Python 9 1.4.1 准备工作 9 1.4.2 操作流程 9 1.4.3 工作原理 9 1.5 在Windows上安装Python 10 1.5.1 操作流程 10 1.5.2 工作原理 11 1.6 在Mac OS X和Linux上安装Python数据库 11 1.6.1 准备工作 11 1.6.2 操作流程 12 1.6.3 工作原理 12 1.6.4 更多内容 13 1.7 安装更多Python包 13 1.7.1 准备工作 14 1.7.2 操作流程 14 1.7.3 工作原理 15 1.7.4 更多内容 15 1.8 安装和使用virtualenv 15 1.8.1 准备工作 16 1.8.2 操作流程 16 1.8.3 工作原理 18 1.8.4 更多内容 18 第 2章 基于R的汽车数据可视化分析 19 2.1 简介 19 2.2 获取汽车燃料效率数据 20 2.2.1 准备工作 20 2.2.2 操作流程 20 2.2.3 工作原理 21 2.3 为你的第 一个分析项目准备好R 21 2.3.1 准备工作 21 2.3.2 操作流程 21 2.3.3 更多内容 22 2.4 将汽车燃料效率数据导入R 22 2.4.1 准备工作 22 2.4.2 操作流程 22 2.4.3 工作原理 24 2.4.4 更多内容 24 2.5 探索并描述燃料效率数据 25 2.5.1 准备工作 25 2.5.2 操作流程 25 2.5.3 工作原理 27 2.5.4 更多内容 28 2.6 分析汽车燃料效率数据随时间的变化情况 29 2.6.1 准备工作 29 2.6.2 操作流程 29 2.6.3 工作原理 37 2.6.4 更多内容 38 2.7 研究汽车的品牌和型号 38 2.7.1 准备工作 39 2.7.2 操作流程 39 2.7.3 工作原理 41 2.7.4 更多内容 41 第3章 基于Python的税收数据应用导向分析 42 3.1 简介 42 3.2 高收入数据分析的准备工作 44 3.2.1 准备工作 44 3.2.2 操作流程 44 3.2.3 工作原理 45 3.3 导入并探索性地分析世界高收入数据集 45 3.3.1 准备工作 45 3.3.2 操作流程 45 3.3.3 工作原理 51 3.3.4 更多内容 52 3.4 分析并可视化美国高收入数据 53 3.4.1 准备工作 53 3.4.2 操作流程 53 3.4.3 工作原理 59 3.5 进一步分析美国高收入群体 60 3.5.1 准备工作 60 3.5.2 操作流程 60 3.5.3 工作原理 64 3.6 使用Jinja2汇报结果 64 3.6.1 准备工作 64 3.6.2 操作流程 64 3.6.3 工作原理 69 3.6.4 更多内容 69 3.7 基于R的数据分析再实现 70 3.7.1 准备工作 70 3.7.2 操作流程 70 3.7.3 更多内容 74 第4章 股市数据建模 75 4.1 简介 75 4.2 获取股市数据 76 4.3 描述数据 78 4.3.1 准备工作 78 4.3.2 操作流程 78 4.3.3 工作原理 79 4.3.4 更多内容 79 4.4 清洗并探索性地分析数据 80 4.4.1 准备工作 80 4.4.2 操作流程 80 4.4.3 工作原理 85 4.5 生成相对估值 85 4.5.1 准备工作 86 4.5.2 操作流程 86 4.5.3 工作原理 89 4.6 筛选股票并分析历史价格 90 4.6.1 准备工作 90 4.6.2 操作流程 90 4.6.3 工作原理 95 第5章 就业数据可视化探索 96 5.1 简介 96 5.2 分析前的准备工作 97 5.2.1 准备工作 97 5.2.2 操作流程 97 5.2.3 工作原理 98 5.3 将就业数据导入R 99 5.3.1 准备工作 99 5.3.2 操作流程 99 5.3.3 工作原理 99 5.3.4 更多内容 100 5.4 探索就业数据 101 5.4.1 准备工作 101 5.4.2 操作流程 101 5.4.3 工作原理 102 5.5 获取、合并附加数据 103 5.5.1 准备工作 103 5.5.2 操作流程 103 5.5.3 工作原理 105 5.6 添加地理信息 105 5.6.1 准备工作 106 5.6.2 操作流程 106 5.6.3 工作原理 108 5.7 提取州和县级水平的薪资及就业信息 109 5.7.1 准备工作 109 5.7.2 操作流程 110 5.7.3 工作原理 111 5.8 可视化薪资的地理分布 112 5.8.1 准备工作 112 5.8.2 操作流程 113 5.8.3 工作原理 115 5.9 分行业探索就业机会的地理分布 115 5.9.1 操作流程 116 5.9.2 工作原理 117 5.9.3 更多内容 117 5.10 绘制地理时间序列的动画地图 118 5.10.1 准备工作 118 5.10.2 操作流程 118 5.10.3 工作原理 122 5.10.4 更多内容 122 5.11 函数基本性能测试 122 5.11.1 准备工作 123 5.11.2 操作流程 123 5.11.3 工作原理 125 5.11.4 更多内容 125 第6章 汽车数据可视化(基于Python) 126 6.1 简介 126 6.2 IPython入门 127 6.2.1 准备工作 127 6.2.2 操作流程 127 6.2.3 工作原理 130 6.3 熟悉Jupyter Notebook 130 6.3.1 准备工作 130 6.3.2 操作流程 130 6.3.3 工作原理 132 6.3.4 更多内容 132 6.4 为分析汽车燃料效率做好准备 133 6.4.1 准备工作 133 6.4.2 操作流程 133 6.4.3 工作原理 134 6.4.4 更多内容 134 6.5 用Python探索并描述汽车燃料效率数据 135 6.5.1 准备工作 135 6.5.2 操作流程 135 6.5.3 工作原理 138 6.5.4 更多内容 138 6.6 用Python分析汽车燃料效率随时间变化的情况 139 6.6.1 准备工作 139 6.6.2 操作流程 139 6.6.3 工作原理 144 6.6.4 更多内容 145 6.7 用Python研究汽车的品牌和型号 146 6.7.1 准备工作 146 6.7.2 操作流程 146 6.7.3 工作原理 149 第7章 社交网络分析(基于Python) 151 7.1 简介 151 7.2 准备用Python进行社交网络的分析工作 153 7.2.1 准备工作 153 7.2.2 操作流程 154 7.2.3 工作原理 154 7.2.4 更多内容 154 7.3 导入网络 155 7.3.1 准备工作 155 7.3.2 操作流程 155 7.3.3 工作原理 156 7.4 探索英雄网络的子图 157 7.4.1 准备工作 157 7.4.2 操作流程 158 7.4.3 工作原理 160 7.4.4 更多内容 160 7.5 找出强关联 160 7.5.1 准备工作 161 7.5.2 操作流程 161 7.5.3 工作原理 163 7.5.4 更多内容 164 7.6 找出关键人物 164 7.6.1 准备工作 164 7.6.2 操作流程 164 7.6.3 工作原理 168 7.6.4 更多内容 168 7.7 探索全网特征 174 7.7.1 准备工作 174 7.7.2 操作流程 174 7.7.3 工作原理 175 7.8 社交网络中的聚类和社群发现 175 7.8.1 准备工作 176 7.8.2 操作流程 176 7.8.3 工作原理 179 7.8.4 更多内容 179 7.9 可视化图 180 7.9.1 准备工作 180 7.9.2 操作流程 180 7.9.3 工作原理 181 7.10 R中的社交网络分析 182 7.10.1 准备工作 182 7.10.2 操作流程 183 7.10.3 工作原理 188 第8章 大规模电影推荐(基于Python) 189 8.1 简介 189 8.2 对偏好建模 191 8.2.1 操作流程 191 8.2.2 工作原理 191 8.3 理解数据 192 8.3.1 准备工作 192 8.3.2 操作流程 193 8.3.3 工作原理 194 8.3.4 更多内容 194 8.4 提取电影评分数据 195 8.4.1 准备工作 195 8.4.2 操作流程 195 8.4.3 工作原理 197 8.5 寻找高评分电影 199 8.5.1 准备工作 199 8.5.2 操作流程 199 8.5.3 工作原理 200 8.5.4 更多内容 201 8.6 改善电影评分系统 201 8.6.1 准备工作 201 8.6.2 操作流程 201 8.6.3 工作原理 202 8.6.4 更多内容 203 8.7 计算用户在偏好空间中的距离 203 8.7.1 准备工作 204 8.7.2 操作流程 204 8.7.3 工作原理 205 8.7.4 更多内容 206 8.8 计算用户之间的相关性 206 8.8.1 准备工作 206 8.8.2 操作流程 207 8.8.3 工作原理 208 8.8.4 更多内容 208 8.9 为用户寻找最佳影评人 208 8.9.1 准备工作 209 8.9.2 操作流程 209 8.9.3 工作原理 210 8.10 预测用户电影评分 211 8.10.1 准备工作 211 8.10.2 操作流程 211 8.10.3 工作原理 212 8.11 基于物品的协同过滤 213 8.11.1 准备工作 214 8.11.2 操作流程 214 8.11.3 工作原理 215 8.12 建立非负矩阵分解模型 216 8.12.1 操作流程 217 8.12.2 工作原理 217 8.13 将数据集载入内存 219 8.13.1 准备工作 219 8.13.2 操作流程 219 8.13.3 工作原理 220 8.13.4 更多内容 221 8.14 导出SVD模型到硬盘 221 8.14.1 操作流程 222 8.14.2 工作原理 223 8.15 训练SVD模型 223 8.15.1 操作流程 223 8.15.2 工作原理 225 8.15.3 更多内容 225 8.16 测试SVD模型 226 8.16.1 操作流程 226 8.16.2 工作原理 226 8.16.3 更多内容 227 第9章 获取和定位Twitter数据(基于Python) 228 9.1 简介 228 9.2 创建Twitter应用 229 9.2.1 准备工作 229 9.2.2 操作流程 230 9.2.3 工作原理 232 9.3 了解Twitter API v1.1 232 9.3.1 准备工作 233 9.3.2 操作流程 233 9.3.3 工作原理 234 9.3.4 更多内容 235 9.4 获取粉丝和好友信息 236 9.4.1 准备工作 236 9.4.2 操作流程 236 9.4.3 工作原理 238 9.4.4 更多内容 238 9.5 获取Twitter用户信息 239 9.5.1 准备工作 239 9.5.2 操作流程 239 9.5.3 工作原理 240 9.5.4 更多内容 240 9.6 避免Twitter速度限制 241 9.6.1 准备工作 241 9.6.2 操作流程 241 9.6.3 工作原理 242 9.7 存储JSON数据至硬盘 242 9.7.1 准备工作 242 9.7.2 操作流程 242 9.7.3 工作原理 243 9.8 搭建MongoDB存储Twitter数据 243 9.8.1 准备工作 244 9.8.2 操作流程 244 9.8.3 工作原理 245 9.8.4 更多内容 245 9.9 利用PyMongo存储用户信息到MongoDB 246 9.9.1 准备工作 246 9.9.2 操作流程 246 9.9.3 工作原理 247 9.10 探索用户地理信息 247 9.10.1 准备工作 248 9.10.2 操作流程 248 9.10.3 工作原理 249 9.10.4 更多内容 250 9.11 利用Python绘制地理分布图 250 9.11.1 准备工作 250 9.11.2 操作流程 250 9.11.3 工作原理 251 9.11.4 更多内容 252 第 10章 预测新西兰的海外游客 254 10.1 简介 254 10.2 时间序列(ts)对象 255 10.2.1 准备工作 256 10.2.2 操作流程 256 10.2.3 工作原理 257 10.3 可视化时间序列数据 257 10.3.1 准备工作 258 10.3.2 操作流程 258 10.3.3 工作原理 260 10.4 简单的线性回归模型 261 10.4.1 准备工作 261 10.4.2 操作流程 261 10.4.3 工作原理 265 10.5 ACF和PACF 265 10.5.1 准备工作 266 10.5.2 操作流程 266 10.5.3 工作原理 267 10.6 ARIMA模型 267 10.6.1 准备工作 268 10.6.2 操作流程 268 10.6.3 工作原理 275 10.7 精确性评估 275 10.7.1 准备工作 276 10.7.2 操作流程 276 10.7.3 工作原理 276 10.8 拟合季节性ARIMA模型 277 10.8.1 准备工作 277 10.8.2 操作流程 277 10.8.3 工作原理 279 10.8.4 更多内容 279 第 11章 德国信用数据分析 280 11.1 简介 280 11.2 简单数据转换 281 11.2.1 准备工作 281 11.2.2 操作流程 281 11.2.3 工作原理 283 11.2.4 更多内容 283 11.3 可视化分类数据 283 11.3.1 准备工作 284 11.3.2 操作流程 284 11.3.3 工作原理 286 11.4 判别分析 286 11.4.1 准备工作 287 11.4.2 操作流程 287 11.4.3 工作原理 290 11.5 划分数据和ROC 290 11.5.1 准备工作 292 11.5.2 操作流程 292 11.6 拟合逻辑回归模型 293 11.6.1 准备工作 293 11.6.2 操作流程 293 11.6.3 工作原理 297 11.7 决策树和决策规则 298 11.7.1 准备工作 298 11.7.2 操作流程 298 11.7.3 工作原理 301 11.8 德国信用数据决策树 301 11.8.1 准备工作 301 11.8.2 操作流程 301 11.8.3 工作原理 304
|