R统计数据清洗及应用
目 录内容简介
目 录
第1章 数据清洗 1
1.1 统计价值链 1
1.1.1 原始数据 2
1.1.2 输入数据 2
1.1.3 有效数据 3
1.1.4 统计数据 3
1.1.5 输出 3
1.2 《R统计数据清洗及应用》使用的表示法和约定 3
查看完整
第1章 数据清洗 1
1.1 统计价值链 1
1.1.1 原始数据 2
1.1.2 输入数据 2
1.1.3 有效数据 3
1.1.4 统计数据 3
1.1.5 输出 3
1.2 《R统计数据清洗及应用》使用的表示法和约定 3
查看完整
目 录内容简介
■重点关注数据清洗方法的自动化,既包括理论知识,也包括使用R语言编写的应用。
■使读者能够设计数据清洗过程,用于进行一次性分析或者设置生产系统以便定期进行数据清洗。
■探索各种统计技术,以便解决诸如不完整、矛盾和离群等方面的问题,更好地进行数据清洗组件的集成和质量监控。
■图书配套网站提供特征数据和R范例代码。
■使读者能够设计数据清洗过程,用于进行一次性分析或者设置生产系统以便定期进行数据清洗。
■探索各种统计技术,以便解决诸如不完整、矛盾和离群等方面的问题,更好地进行数据清洗组件的集成和质量监控。
■图书配套网站提供特征数据和R范例代码。
目 录内容简介
目 录
第1章 数据清洗 1
1.1 统计价值链 1
1.1.1 原始数据 2
1.1.2 输入数据 2
1.1.3 有效数据 3
1.1.4 统计数据 3
1.1.5 输出 3
1.2 《R统计数据清洗及应用》使用的表示法和约定 3
第2章 R语言简介 5
2.1 命令行中的R语言 5
2.2 向量 7
2.2.1 向量计算 9
2.2.2 数组和矩阵 10
2.3 数据帧 11
2.3.1 公式-数据接口 12
2.3.2 选择行和列,布尔运算符 13
2.3.3 使用索引进行选择 13
2.3.4 数据帧操纵:dplyr软件包 15
2.4 特殊值 16
2.5 在R中导入和导出数据 19
2.5.1 R中的文件路径 20
2.5.2 软件包提供的格式 20
2.5.3 从数据库读取数据 21
2.5.4 处理R外部的数据 21
2.6 函数 22
2.6.1 使用函数 22
2.6.2 编写函数 23
2.7 《R统计数据清洗及应用》中使用的软件包 24
第3章 数据的技术表示 27
3.1 数值数据 28
3.1.1 整数 28
3.1.2 R中的整数 30
3.1.3 实数 31
3.1.4 双精度数 31
3.1.5 机器精度的概念 33
3.1.6 处理浮点数的不良结果 34
3.1.7 处理不良结果 35
3.1.8 R中的数值数据 37
3.2 文本数据 38
3.2.1 术语和编码 38
3.2.2 Unicode 39
3.2.3 一些常见的编码方案 40
3.2.4 R中的文本数据:character类的对象 43
3.2.5 R中的编码方案 45
3.2.6 使用非本地编码方案进行数据的读取和写入 46
3.2.7 检测编码方案 48
3.2.8 排序规则和排序 49
3.3 时间和日期 51
3.3.1 TAI、UTC以及POSIX从Epcoch开始的秒数 51
3.3.2 时间和日期表示法 52
3.3.3 R中的时间和日期存储 54
3.3.4 R中的时间和日期转换 55
3.3.5 闰日、时区和夏令时 57
3.4 区域设置注意事项 58
第4章 数据结构 61
4.1 简介 61
4.2 表格数据 61
4.2.1 data.frame对象 62
4.2.2 数据库 62
4.2.3 dplyr 64
4.3 矩阵数据 65
4.4 时间序列 66
4.5 图表数据 68
4.6 Web数据 70
4.6.1 网页爬取 70
4.6.2 Web API 70
4.7 其他数据 73
4.8 整理表格数据 73
4.8.1 每列变量 75
4.8.2 单个观测值存储在多个表中 75
第5章 清洗文本数据 77
5.1 字符规范化 78
5.1.1 编码转换和Unicode规范化 78
5.1.2 字符转换和音译 80
5.2 使用正则表达式进行模式匹配 82
5.2.1 基本正则表达式 82
5.2.2 实用的正则表达式 85
5.2.3 在R中生成正则表达式 93
5.3 R中的常见字符串处理任务 94
5.4 近似文本匹配 99
5.4.1 字符串指标 101
5.4.2 R中的字符串指标和近似文本匹配 110
第6章 数据验证 121
6.1 简介 121
6.2 初识validate软件包 122
6.2.1 使用check_that快速检查 122
6.2.2 基本工作流程:validator和confront 124
6.2.3 validate和DSL背景简介 126
6.3 定义数据验证 127
6.3.1 数据验证的正式定义 128
6.3.2 验证函数的运算 130
6.3.3 验证和缺失值 132
6.3.4 验证函数的结构 133
6.3.5 界定validate中的验证规则 134
6.4 数据验证函数的形式类型 135
6.4.1 深入了解测量 135
6.4.2 验证规则的分类 137
6.5 使用validate软件包验证数据 139
6.5.1 控制台和validator对象中的验证规则 139
6.5.2 在管道中验证 141
6.5.3 抛出错误或警告 141
6.5.4 测试线性方程式的公差 142
6.5.5 设置和重置选项 143
6.5.6 从文件导入验证规则/将验证规则导出到文件 144
6.5.7 检查变量类型和元数据 146
6.5.8 检查值范围和代码列表 147
6.5.9 检查记录中一致性规则 148
6.5.10 检查跨记录验证规则 150
6.5.11 检查函数依赖 151
6.5.12 跨数据集验证 152
6.5.13 宏、变量组、键 153
6.5.14 分析输出:validation对象 154
6.5.15 输出维度和输出选择 156
第7章 在数据记录中定位错误 159
7.1 错误定位 159
7.2 使用R进行错误定位 162
7.3 以MIP问题的形式进行错误定位 164
7.3.1 错误定位和混合整数规划 165
7.3.2 线性限制 166
7.3.3 分类限制 167
7.3.4 混合类型限制 169
7.4 数值稳定性问题 171
7.4.1 解决MIP问题 172
7.4.2 缩放数值记录 174
7.4.3 设置数值阈值 174
7.5 实际问题 176
7.5.1 设置可靠性权重 176
7.5.2 简化条件验证规则 177
7.6 结论 181
第8章 规则集的维护和简化 185
8.1 验证规则的质量 185
8.1.1 完备性 185
8.1.2 多余的规则和不可行性 186
8.2 以逻辑语言表述规则 186
8.3 规则集问题 188
8.3.1 不可行规则集 188
8.3.2 固定值 190
8.3.3 冗余规则 191
8.3.4 非松弛子句 191
8.3.5 非约束子句 191
8.4 检测和简化过程 192
8.4.1 混合整数规划 193
8.4.2 检测可行性 193
8.4.3 查找导致不可行的规则 193
8.4.4 检测冲突规则 194
8.4.5 检测部分不可行性 194
8.4.6 检测固定值 194
8.4.7 检测非松弛子句 195
8.4.8 检测非约束子句 195
8.4.9 检测冗余规则 195
8.5 结论 196
第9章 基于领域知识模型的方法 197
9.1 使用数据修改规则进行校正 197
9.1.1 修改函数 198
9.1.2 针对数值数据的一类修改函数 202
9.2 使用dcmodify进行基于规则的校正 206
9.2.1 从文件中读取规则 207
9.2.2 修改规则语法 208
9.2.3 缺失值 209
9.2.4 顺序执行和与顺序无关的执行 209
9.2.5 选项设置管理 210
9.3 演绎校正 210
9.3.1 校正数值数据中的键入错误 211
9.3.2 使用线性限制进行演绎插补 214
第10章 插补和调整 221
10.1 缺失数据 221
10.1.1 缺失数据机制 221
10.1.2 使用R可视化和测试缺失数据中的模式 222
10.2 基于模型的插补 226
10.3 R中基于模型的插补 228
10.3.1 使用simputation指定插补方法 228
10.3.2 基于线性回归的插补 229
10.3.3 M估计 231
10.3.4 Lasso回归、岭回归和弹性网络回归 233
10.3.5 分类和回归树 233
10.3.6 随机森林 236
10.4 使用R进行赋值元素插补 237
10.4.1 随机和顺序热卡插补 238
10.4.2 k近邻和预测均值匹配 239
10.5 simputation软件包中的其他方法 240
10.6 基于EM算法的插补 241
10.6.1 EM算法 242
10.6.2 假定多变量正态分布情况下的EM插补 244
10.7 插补下的抽样方差 245
10.8 多重插补 246
10.8.1 基于EM算法的多重插补 249
10.8.2 Amelia软件包 249
10.8.3 基于链式方程的多变量插补 253
10.8.4 使用mice软件包进行插补 254
10.9 用于估计插补方差的分析方法 257
10.10 选择插补方法 257
10.11 约束值调整 260
10.11.1 形式化描述 260
10.11.2 对插补数据的应用 263
10.11.3 使用rspa软件包调整插补值 263
第11章 示例:一个小型数据清洗系统 265
11.1 设置 266
11.1.1 确定性方法 267
11.1.2 错误定位 268
11.1.3 插补 269
11.1.4 调整插补数据 271
11.2 监控数据更改 273
11.2.1 数据差异(Daff) 273
11.2.2 汇总单元格更改 275
11.2.3 按照验证规则汇总更改 276
11.2.4 使用lumberjack自动跟踪数据更改 278
11.3 集成和自动化 282
11.3.1 使用RScript 282
11.3.2 docopt软件包 283
11.3.3 自动化数据清洗 283
^ 收 起
第1章 数据清洗 1
1.1 统计价值链 1
1.1.1 原始数据 2
1.1.2 输入数据 2
1.1.3 有效数据 3
1.1.4 统计数据 3
1.1.5 输出 3
1.2 《R统计数据清洗及应用》使用的表示法和约定 3
第2章 R语言简介 5
2.1 命令行中的R语言 5
2.2 向量 7
2.2.1 向量计算 9
2.2.2 数组和矩阵 10
2.3 数据帧 11
2.3.1 公式-数据接口 12
2.3.2 选择行和列,布尔运算符 13
2.3.3 使用索引进行选择 13
2.3.4 数据帧操纵:dplyr软件包 15
2.4 特殊值 16
2.5 在R中导入和导出数据 19
2.5.1 R中的文件路径 20
2.5.2 软件包提供的格式 20
2.5.3 从数据库读取数据 21
2.5.4 处理R外部的数据 21
2.6 函数 22
2.6.1 使用函数 22
2.6.2 编写函数 23
2.7 《R统计数据清洗及应用》中使用的软件包 24
第3章 数据的技术表示 27
3.1 数值数据 28
3.1.1 整数 28
3.1.2 R中的整数 30
3.1.3 实数 31
3.1.4 双精度数 31
3.1.5 机器精度的概念 33
3.1.6 处理浮点数的不良结果 34
3.1.7 处理不良结果 35
3.1.8 R中的数值数据 37
3.2 文本数据 38
3.2.1 术语和编码 38
3.2.2 Unicode 39
3.2.3 一些常见的编码方案 40
3.2.4 R中的文本数据:character类的对象 43
3.2.5 R中的编码方案 45
3.2.6 使用非本地编码方案进行数据的读取和写入 46
3.2.7 检测编码方案 48
3.2.8 排序规则和排序 49
3.3 时间和日期 51
3.3.1 TAI、UTC以及POSIX从Epcoch开始的秒数 51
3.3.2 时间和日期表示法 52
3.3.3 R中的时间和日期存储 54
3.3.4 R中的时间和日期转换 55
3.3.5 闰日、时区和夏令时 57
3.4 区域设置注意事项 58
第4章 数据结构 61
4.1 简介 61
4.2 表格数据 61
4.2.1 data.frame对象 62
4.2.2 数据库 62
4.2.3 dplyr 64
4.3 矩阵数据 65
4.4 时间序列 66
4.5 图表数据 68
4.6 Web数据 70
4.6.1 网页爬取 70
4.6.2 Web API 70
4.7 其他数据 73
4.8 整理表格数据 73
4.8.1 每列变量 75
4.8.2 单个观测值存储在多个表中 75
第5章 清洗文本数据 77
5.1 字符规范化 78
5.1.1 编码转换和Unicode规范化 78
5.1.2 字符转换和音译 80
5.2 使用正则表达式进行模式匹配 82
5.2.1 基本正则表达式 82
5.2.2 实用的正则表达式 85
5.2.3 在R中生成正则表达式 93
5.3 R中的常见字符串处理任务 94
5.4 近似文本匹配 99
5.4.1 字符串指标 101
5.4.2 R中的字符串指标和近似文本匹配 110
第6章 数据验证 121
6.1 简介 121
6.2 初识validate软件包 122
6.2.1 使用check_that快速检查 122
6.2.2 基本工作流程:validator和confront 124
6.2.3 validate和DSL背景简介 126
6.3 定义数据验证 127
6.3.1 数据验证的正式定义 128
6.3.2 验证函数的运算 130
6.3.3 验证和缺失值 132
6.3.4 验证函数的结构 133
6.3.5 界定validate中的验证规则 134
6.4 数据验证函数的形式类型 135
6.4.1 深入了解测量 135
6.4.2 验证规则的分类 137
6.5 使用validate软件包验证数据 139
6.5.1 控制台和validator对象中的验证规则 139
6.5.2 在管道中验证 141
6.5.3 抛出错误或警告 141
6.5.4 测试线性方程式的公差 142
6.5.5 设置和重置选项 143
6.5.6 从文件导入验证规则/将验证规则导出到文件 144
6.5.7 检查变量类型和元数据 146
6.5.8 检查值范围和代码列表 147
6.5.9 检查记录中一致性规则 148
6.5.10 检查跨记录验证规则 150
6.5.11 检查函数依赖 151
6.5.12 跨数据集验证 152
6.5.13 宏、变量组、键 153
6.5.14 分析输出:validation对象 154
6.5.15 输出维度和输出选择 156
第7章 在数据记录中定位错误 159
7.1 错误定位 159
7.2 使用R进行错误定位 162
7.3 以MIP问题的形式进行错误定位 164
7.3.1 错误定位和混合整数规划 165
7.3.2 线性限制 166
7.3.3 分类限制 167
7.3.4 混合类型限制 169
7.4 数值稳定性问题 171
7.4.1 解决MIP问题 172
7.4.2 缩放数值记录 174
7.4.3 设置数值阈值 174
7.5 实际问题 176
7.5.1 设置可靠性权重 176
7.5.2 简化条件验证规则 177
7.6 结论 181
第8章 规则集的维护和简化 185
8.1 验证规则的质量 185
8.1.1 完备性 185
8.1.2 多余的规则和不可行性 186
8.2 以逻辑语言表述规则 186
8.3 规则集问题 188
8.3.1 不可行规则集 188
8.3.2 固定值 190
8.3.3 冗余规则 191
8.3.4 非松弛子句 191
8.3.5 非约束子句 191
8.4 检测和简化过程 192
8.4.1 混合整数规划 193
8.4.2 检测可行性 193
8.4.3 查找导致不可行的规则 193
8.4.4 检测冲突规则 194
8.4.5 检测部分不可行性 194
8.4.6 检测固定值 194
8.4.7 检测非松弛子句 195
8.4.8 检测非约束子句 195
8.4.9 检测冗余规则 195
8.5 结论 196
第9章 基于领域知识模型的方法 197
9.1 使用数据修改规则进行校正 197
9.1.1 修改函数 198
9.1.2 针对数值数据的一类修改函数 202
9.2 使用dcmodify进行基于规则的校正 206
9.2.1 从文件中读取规则 207
9.2.2 修改规则语法 208
9.2.3 缺失值 209
9.2.4 顺序执行和与顺序无关的执行 209
9.2.5 选项设置管理 210
9.3 演绎校正 210
9.3.1 校正数值数据中的键入错误 211
9.3.2 使用线性限制进行演绎插补 214
第10章 插补和调整 221
10.1 缺失数据 221
10.1.1 缺失数据机制 221
10.1.2 使用R可视化和测试缺失数据中的模式 222
10.2 基于模型的插补 226
10.3 R中基于模型的插补 228
10.3.1 使用simputation指定插补方法 228
10.3.2 基于线性回归的插补 229
10.3.3 M估计 231
10.3.4 Lasso回归、岭回归和弹性网络回归 233
10.3.5 分类和回归树 233
10.3.6 随机森林 236
10.4 使用R进行赋值元素插补 237
10.4.1 随机和顺序热卡插补 238
10.4.2 k近邻和预测均值匹配 239
10.5 simputation软件包中的其他方法 240
10.6 基于EM算法的插补 241
10.6.1 EM算法 242
10.6.2 假定多变量正态分布情况下的EM插补 244
10.7 插补下的抽样方差 245
10.8 多重插补 246
10.8.1 基于EM算法的多重插补 249
10.8.2 Amelia软件包 249
10.8.3 基于链式方程的多变量插补 253
10.8.4 使用mice软件包进行插补 254
10.9 用于估计插补方差的分析方法 257
10.10 选择插补方法 257
10.11 约束值调整 260
10.11.1 形式化描述 260
10.11.2 对插补数据的应用 263
10.11.3 使用rspa软件包调整插补值 263
第11章 示例:一个小型数据清洗系统 265
11.1 设置 266
11.1.1 确定性方法 267
11.1.2 错误定位 268
11.1.3 插补 269
11.1.4 调整插补数据 271
11.2 监控数据更改 273
11.2.1 数据差异(Daff) 273
11.2.2 汇总单元格更改 275
11.2.3 按照验证规则汇总更改 276
11.2.4 使用lumberjack自动跟踪数据更改 278
11.3 集成和自动化 282
11.3.1 使用RScript 282
11.3.2 docopt软件包 283
11.3.3 自动化数据清洗 283
^ 收 起
目 录内容简介
■重点关注数据清洗方法的自动化,既包括理论知识,也包括使用R语言编写的应用。
■使读者能够设计数据清洗过程,用于进行一次性分析或者设置生产系统以便定期进行数据清洗。
■探索各种统计技术,以便解决诸如不完整、矛盾和离群等方面的问题,更好地进行数据清洗组件的集成和质量监控。
■图书配套网站提供特征数据和R范例代码。
■使读者能够设计数据清洗过程,用于进行一次性分析或者设置生产系统以便定期进行数据清洗。
■探索各种统计技术,以便解决诸如不完整、矛盾和离群等方面的问题,更好地进行数据清洗组件的集成和质量监控。
■图书配套网站提供特征数据和R范例代码。
比价列表