书籍详情
SQL数据分析
作者:[美]凯西·谷村(Cathy Tanimura)
出版社:中国电力出版社
出版时间:2023-08-01
ISBN:9787519879518
定价:¥128.00
购买这本书可以去
内容简介
本书的主要内容有:学习准备分析数据的关键步骤。使用SQL的日期和时间操作进行时间序列分析。使用同期群分析研究群体如何随时间变化。使用SQL的强大功能和操作符进行文本分析。检测数据中的异常值,并用代替值替换它们。使用实验分析建立因果关系,也称为A/B测试。
作者简介
Cathy Tanimura有在不同行业领域超过20年的数据分析相关经验,从金融到B2B软件再到客户服务。Cathy带着用数据将人们与企业更紧密地连接起来的信念和热情,帮助多个头部科技公司搭建了数据基础架构并管理数据团队。她对用SQL在主流的开源数据库进行数据分析有着丰富的经验。
目录
目录
前言 .1
第1 章 用SQL 来做数据分析 7
1.1 什么是数据分析 . 7
1.2 为什么用SQL 10
1.2.1 SQL 是什么 10
1.2.2 SQL 的优势 13
1.2.3 SQL 与R 和Python 的对比 14
1.2.4 SQL 作为数据分析流程中的一部分 . 16
1.3 数据库类型以及如何使用 19
1.3.1 行存储数据 20
1.3.2 列存储数据 22
1.3.3 其他的数据结构类型 23
1.4 总结 25
第2 章 为数据分析做准备 26
2.1 数据类型 27
2.1.1 数据库的数据类型 . 27
2.1.2 结构化和非结构化数据 29
2.1.3 定量和定性数据 . 30
2.1.4 第一方、第二方和第三方数据 31
2.1.5 稀疏数据. 32
2.2 SQL 查询结构 33
2.3 数据剖析:分布 36
2.3.1 直方图和频率 37
2.3.2 分箱 40
2.3.3 n-Tiles 43
2.4 数据剖析:数据质量 . 46
2.4.1 检测重复数据 47
2.4.2 用GROUP BY 和DISTINCT 来处理重复数据 49
2.5 准备:数据清理 50
2.5.1 通过CASE 转换来清理数据 51
2.5.2 数据类型转换 54
2.5.3 处理空值:coalesce, nulliff, nvl 函数 57
2.5.4 缺失的数据 61
2.6 准备:数据构形 66
2.6.1 你需要怎样的输出:BI,可视化,统计,机器学习 67
2.6.2 用CASE 语句进行数据透视 68
2.6.3 用UNION 语句来取消数据透视 70
2.6.4 pivot(透视)和unpivot(取消透视)函数 73
2.7 总结 75
第3 章 时间序列分析 .76
3.1 日期、日期时间和时间操作 77
3.1.1 时区转换. 78
3.1.2 日期和时间戳的格式转换 . 80
3.1.3 日期相关的计算 . 85
3.1.4 时间相关的计算 . 88
3.1.5 连接不同来源的数据 90
3.2 零售销售数据集 91
3.3 对数据进行趋势分析 . 92
3.3.1 简单的趋势 93
3.3.2 比较时间序列的组成部分 . 95
3.3.3 计算占总数的百分比 . 104
3.3.4 运用索引以查看随时间变化的百分比 108
3.4 滚动时间窗口 . 113
3.4.1 计算滚动时间窗口 115
3.4.2 稀疏数据的滚动时间窗口 121
3.4.3 计算累计值 . 124
3.5 季节性分析 127
3.5.1 同期比较:YoY 和MoM . 129
3.5.2 同期比较:与去年的同月进行对比 132
3.5.3 与多个以前的周期做对比 137
3.6 总结 . 140
第 4 章 同期群分析 141
4.1 同期群:一种有用的分析框架 142
4.2 立法者数据集 . 145
4.3 留存 . 146
4.3.1 基本留存曲线的 SQL 148
4.3.2 调整时间序列以提高留存率的准确性 152
4.3.3 从时间序列数据构建同期群 158
4.3.4 从单独的表构建同期群 164
4.3.5 处理稀疏同期群 168
4.3.6 用除第一个日期以外的其他日期定义同期群 173
4.4 相关同期群分析 176
4.4.1 生存 177
4.4.2 返回或重复购买行为 . 181
4.4.3 累积计算 187
4.5 透过同期群看横断面分析 . 191
4.6 总结 . 200
第 5 章 文本分析 201
5.1 为什么使用 SQL 进行文本分析 . 201
5.1.1 什么是文本分析 202
5.1.2 为什么 SQL 是文本分析的好选择 202
5.1.3 什么情况下 SQL 不是一个好的选择 . 204
5.2 UFO 目击数据集 205
5.3 文本特征 206
5.4 解析文本 208
5.5 文本转换 214
5.6 在较大的文本块中查找元素 223
5.6.1 通配符匹配:LIKE,ILIKE 223
5.6.2 精确匹配:IN,NOT IN . 229
5.6.3 正则表达式 . 232
5.7 构建与重塑文本 250
5.7.1 拼接 250
5.7.2 重塑文本 254
5.8 总结 . 258
第6 章 异常检测 259
6.1 SQL 异常检测的能力和限制 260
6.2 数据集 261
6.3 检测异常值 262
6.3.1 通过排序查找异常 263
6.3.2 通过计算百分比和标准偏差发现异常 266
6.3.3 通过作图可视化查找异常 274
6.4 异常的形式 283
6.4.1 异常值 283
6.4.2 异常的计数或频率 287
6.4.3 数据缺失引起的异常 . 292
6.5 处理异常 294
6.5.1 探查 294
6.5.2 删除 295
6.5.3 替代值替换 . 297
6.5.4 缩放 299
6.6 总结 . 301
第 7 章 实验分析 302
7.1 用 SQL 进行实验分析的优势与局限性 . 303
7.2 数据集 305
7.3 实验的类型 307
7.3.1 二元结果实验:卡方检验 307
7.3.2 具有连续结果的实验:t 检验 310
7.4 实验的挑战和拯救有缺陷的实验的方法 312
7.4.1 变体分配 312
7.4.2 异常值 314
7.4.3 时间盒 315
7.4.4 重复暴露实验 317
7.5 当无法进行控制实验时:替代分析 . 318
7.5.1 前/ 后分析 319
7.5.2 自然实验分析 321
7.5.3 阈值附近的群体分析 . 322
7.6 总结 . 323
第8 章 创建用于分析的复杂数据集 324
8.1 何时对复杂数据集使用 SQL 324
8.1.1 使用 SQL 的优点 . 325
8.1.2 什么时候构建ETL . 326
8.1.3 何时将逻辑放入其他工具中 328
8.2 代码组织 329
8.2.1 注释 330
8.2.2 大写,缩进,括号和其他格式技巧 331
8.2.3 存储代码 334
8.3 组织计算 335
8.3.1 理解SQL 子句的计算顺序 . 335
8.3.2 子查询 339
8.3.3 临时表 341
8.3.4 公共表表达式 343
8.3.5 grouping sets 344
8.4 管理数据集大小和隐私问题 349
8.4.1 使用 % 、mod 进行抽样 . 349
8.4.2 降低维数 351
8.4.3 PII 和数据隐私 . 355
8.5 总结 . 357
第9 章 结论 358
9.1 漏斗分析 358
9.2 流失、中止和其他离开的定义 360
9.3 购物篮分析 365
9.4 资源 . 367
9.4.1 书籍和博客 . 368
9.4.2 数据集 369
9.5 最终的想法 370
前言 .1
第1 章 用SQL 来做数据分析 7
1.1 什么是数据分析 . 7
1.2 为什么用SQL 10
1.2.1 SQL 是什么 10
1.2.2 SQL 的优势 13
1.2.3 SQL 与R 和Python 的对比 14
1.2.4 SQL 作为数据分析流程中的一部分 . 16
1.3 数据库类型以及如何使用 19
1.3.1 行存储数据 20
1.3.2 列存储数据 22
1.3.3 其他的数据结构类型 23
1.4 总结 25
第2 章 为数据分析做准备 26
2.1 数据类型 27
2.1.1 数据库的数据类型 . 27
2.1.2 结构化和非结构化数据 29
2.1.3 定量和定性数据 . 30
2.1.4 第一方、第二方和第三方数据 31
2.1.5 稀疏数据. 32
2.2 SQL 查询结构 33
2.3 数据剖析:分布 36
2.3.1 直方图和频率 37
2.3.2 分箱 40
2.3.3 n-Tiles 43
2.4 数据剖析:数据质量 . 46
2.4.1 检测重复数据 47
2.4.2 用GROUP BY 和DISTINCT 来处理重复数据 49
2.5 准备:数据清理 50
2.5.1 通过CASE 转换来清理数据 51
2.5.2 数据类型转换 54
2.5.3 处理空值:coalesce, nulliff, nvl 函数 57
2.5.4 缺失的数据 61
2.6 准备:数据构形 66
2.6.1 你需要怎样的输出:BI,可视化,统计,机器学习 67
2.6.2 用CASE 语句进行数据透视 68
2.6.3 用UNION 语句来取消数据透视 70
2.6.4 pivot(透视)和unpivot(取消透视)函数 73
2.7 总结 75
第3 章 时间序列分析 .76
3.1 日期、日期时间和时间操作 77
3.1.1 时区转换. 78
3.1.2 日期和时间戳的格式转换 . 80
3.1.3 日期相关的计算 . 85
3.1.4 时间相关的计算 . 88
3.1.5 连接不同来源的数据 90
3.2 零售销售数据集 91
3.3 对数据进行趋势分析 . 92
3.3.1 简单的趋势 93
3.3.2 比较时间序列的组成部分 . 95
3.3.3 计算占总数的百分比 . 104
3.3.4 运用索引以查看随时间变化的百分比 108
3.4 滚动时间窗口 . 113
3.4.1 计算滚动时间窗口 115
3.4.2 稀疏数据的滚动时间窗口 121
3.4.3 计算累计值 . 124
3.5 季节性分析 127
3.5.1 同期比较:YoY 和MoM . 129
3.5.2 同期比较:与去年的同月进行对比 132
3.5.3 与多个以前的周期做对比 137
3.6 总结 . 140
第 4 章 同期群分析 141
4.1 同期群:一种有用的分析框架 142
4.2 立法者数据集 . 145
4.3 留存 . 146
4.3.1 基本留存曲线的 SQL 148
4.3.2 调整时间序列以提高留存率的准确性 152
4.3.3 从时间序列数据构建同期群 158
4.3.4 从单独的表构建同期群 164
4.3.5 处理稀疏同期群 168
4.3.6 用除第一个日期以外的其他日期定义同期群 173
4.4 相关同期群分析 176
4.4.1 生存 177
4.4.2 返回或重复购买行为 . 181
4.4.3 累积计算 187
4.5 透过同期群看横断面分析 . 191
4.6 总结 . 200
第 5 章 文本分析 201
5.1 为什么使用 SQL 进行文本分析 . 201
5.1.1 什么是文本分析 202
5.1.2 为什么 SQL 是文本分析的好选择 202
5.1.3 什么情况下 SQL 不是一个好的选择 . 204
5.2 UFO 目击数据集 205
5.3 文本特征 206
5.4 解析文本 208
5.5 文本转换 214
5.6 在较大的文本块中查找元素 223
5.6.1 通配符匹配:LIKE,ILIKE 223
5.6.2 精确匹配:IN,NOT IN . 229
5.6.3 正则表达式 . 232
5.7 构建与重塑文本 250
5.7.1 拼接 250
5.7.2 重塑文本 254
5.8 总结 . 258
第6 章 异常检测 259
6.1 SQL 异常检测的能力和限制 260
6.2 数据集 261
6.3 检测异常值 262
6.3.1 通过排序查找异常 263
6.3.2 通过计算百分比和标准偏差发现异常 266
6.3.3 通过作图可视化查找异常 274
6.4 异常的形式 283
6.4.1 异常值 283
6.4.2 异常的计数或频率 287
6.4.3 数据缺失引起的异常 . 292
6.5 处理异常 294
6.5.1 探查 294
6.5.2 删除 295
6.5.3 替代值替换 . 297
6.5.4 缩放 299
6.6 总结 . 301
第 7 章 实验分析 302
7.1 用 SQL 进行实验分析的优势与局限性 . 303
7.2 数据集 305
7.3 实验的类型 307
7.3.1 二元结果实验:卡方检验 307
7.3.2 具有连续结果的实验:t 检验 310
7.4 实验的挑战和拯救有缺陷的实验的方法 312
7.4.1 变体分配 312
7.4.2 异常值 314
7.4.3 时间盒 315
7.4.4 重复暴露实验 317
7.5 当无法进行控制实验时:替代分析 . 318
7.5.1 前/ 后分析 319
7.5.2 自然实验分析 321
7.5.3 阈值附近的群体分析 . 322
7.6 总结 . 323
第8 章 创建用于分析的复杂数据集 324
8.1 何时对复杂数据集使用 SQL 324
8.1.1 使用 SQL 的优点 . 325
8.1.2 什么时候构建ETL . 326
8.1.3 何时将逻辑放入其他工具中 328
8.2 代码组织 329
8.2.1 注释 330
8.2.2 大写,缩进,括号和其他格式技巧 331
8.2.3 存储代码 334
8.3 组织计算 335
8.3.1 理解SQL 子句的计算顺序 . 335
8.3.2 子查询 339
8.3.3 临时表 341
8.3.4 公共表表达式 343
8.3.5 grouping sets 344
8.4 管理数据集大小和隐私问题 349
8.4.1 使用 % 、mod 进行抽样 . 349
8.4.2 降低维数 351
8.4.3 PII 和数据隐私 . 355
8.5 总结 . 357
第9 章 结论 358
9.1 漏斗分析 358
9.2 流失、中止和其他离开的定义 360
9.3 购物篮分析 365
9.4 资源 . 367
9.4.1 书籍和博客 . 368
9.4.2 数据集 369
9.5 最终的想法 370
猜您喜欢