第 1章 获取数据与清洗数据 1
1.1 简介 2
1.2 使用Java从分层目录中提取所有文件名 3
准备工作 3
操作步骤 3
1.3 使用Apache Commons IO从多层目录中提取所有文件名 5
准备工作 5
操作步骤 5
1.4 使用Java 8从文本文件一次性读取所有内容 6
操作步骤 7
1.5 使用Apache Commons IO从文本文件一次性读取所有内容 7
准备工作 7
操作方法 8
1.6 使用Apache Tika提取PDF文本 8
准备知识 9
操作步骤 9
1.7 使用正则表达式清洗ASCII文本文件 11
操作步骤 11
1.8 使用Univocity解析CSV文件 12
准备工作 13
操作步骤 13
1.9 使用Univocity解析TSV文件 15
准备工作 15
操作步骤 16
1.10 使用JDOM解析XML文件 17
准备工作 17
操作步骤 18
1.11 使用JSON.simple编写JSON文件 20
准备工作 20
操作步骤 21
1.12 使用JSON.simple读取JSON文件 23
准备工作 24
操作步骤 24
1.13 使用JSoup从一个URL提取Web数据 26
准备工作 26
操作步骤 26
1.14 使用Selenium Webdriver从网站提取Web数据 29
准备工作 29
操作步骤 29
1.15 从MySQL数据库读取表格数据 32
准备工作 32
操作步骤 32
第 2章 为数据建立索引与搜索数据 35
2.1 简介 35
2.2 使用Apache Lucene为数据建立索引 35
准备工作 36
操作步骤 40
工作原理 47
2.3 使用Apache Lucene搜索带索引的数据 50
准备工作 50
操作步骤 51
第3章 数据统计分析 56
3.1 简介 57
3.2 生成描述性统计 59
操作步骤 59
3.3 生成概要统计 60
操作步骤 60
3.4 从多种分布生成概要统计 61
操作步骤 62
更多内容 63
3.5 计算频率分布 64
操作步骤 64
3.6 计算字符串中的词频 65
操作步骤 65
工作原理 67
3.7 使用Java 8计算字符串中的词频 67
操作步骤 67
3.8 计算简单回归 68
操作步骤 69
3.9 计算普通最小二乘回归 70
操作步骤 70
3.10 计算广义最小二乘回归 72
操作步骤 72
3.11 计算两组数据点的协方差 74
操作步骤 74
3.12 为两组数据点计算皮尔逊相关系数 75
操作步骤 75
3.13 执行配对t检验 76
操作步骤 76
3.14 执行卡方检验 77
操作步骤 78
3.15 执行单因素方差分析
(one-way ANOVA test) 79
操作步骤 79
3.16 执行K-S检验 81
操作步骤 81
第4章 数据学习Ⅰ 83
4.1 简介 83
4.2 创建与保存ARFF文件 84
操作步骤 87
4.3 对机器学习模型进行交叉验证 91
操作步骤 91
4.4 对新的测试数据进行分类 95
准备工作 95
操作步骤 96
4.5 使用过滤分类器对新测试数据分类 102
操作步骤 102
4.6 创建线性回归模型 105
操作步骤 106
4.7 创建逻辑回归模型 108
操作步骤 108
4.8 使用K均值算法对数据点
进行聚类 110
操作步骤 110
4.9 依据类别对数据进行聚类处理 113
操作方法 113
4.10 学习数据间的关联规则 116
准备工作 116
操作步骤 116
4.11 使用低层方法、过滤方法、元分类器方法选择特征/属性 118
准备工作 119
操作步骤 119
第5章 数据学习Ⅱ 125
5.1 简介 125
5.2 使用Java机器学习库(Java-ML)向数据应用机器学习 126
准备工作 126
操作步骤 128
5.3 使用斯坦福分类器对数据点分类 137
准备工作 137
操作步骤 140
工作原理 141
5.4 使用MOA对数据点分类 142
准备工作 142
操作步骤 144
5.5 使用Mulan对多标签数据点进行分类 147
准备工作 147
操作步骤 150
第6章 从文本数据提取信息 154
6.1 简介 154
6.2 使用Java检测标记(单词) 155
准备工作 155
操作步骤 155
6.3 使用Java检测句子 160
准备工作 160
操作步骤 160
6.4 使用OpenNLP检测标记(单词)与句子 161
准备工作 162
操作步骤 163
6.5 使用Stanford CoreNLP从标记中提取词根、词性,以及
识别命名实体 167
准备工作 167
操作步骤 169
6.6 使用Java 8借助余弦相似性测度测量文本相似度 171
准备工作 172
操作步骤 172
6.7 使用Mallet从文本文档提取主题 176
准备工作 177
操作步骤 179
6.8 使用Mallet对文本文档进行分类 184
准备工作 184
操作步骤 185
6.9 使用Weka对文本文档进行分类 189
准备工作 190
操作步骤 191
第7章 处理大数据 194
7.1 简介 194
7.2 使用Apache Mahout训练在线逻辑回归模型 195
准备工作 195
操作步骤 198
7.3 使用Apache Mahout应用在线逻辑回归模型 202
准备工作 202
操作步骤 203
7.4 使用Apache Spark解决简单的文本挖掘问题 207
准备工作 208
操作步骤 210
7.5 使用MLib的K均值算法做聚类 214
准备工作 214
操作步骤 214
7.6 使用MLib创建线性回归模型 217
准备工作 217
操作步骤 218
7.7 使用MLib的随机森林模型对数据点进行分类 222
准备工作 222
操作步骤 223
第8章 数据深度学习 229
8.1 简介 229
8.2 使用DL4j创建Word2vec神经网络 241
操作方法 241
工作原理 243
更多内容 246
8.3 使用DL4j创建深度信念神经网络 246
操作步骤 246
工作原理 250
8.4 使用DL4j创建深度自动编码器 254
操作步骤 254
工作原理 256
第9章 数据可视化 259
9.1 简介 259
9.2 绘制2D正弦曲线 260
准备工作 260
操作步骤 262
9.3 绘制直方图 266
准备工作 266
操作步骤 268
9.4 绘制条形图 273
准备工作 274
操作步骤 275
9.5 绘制箱线图或箱须图 279
准备工作 279
操作步骤 281
9.6 绘制散点图 285
准备工作 285
操作步骤 286
9.7 绘制甜圈图 289
准备工作 289
操作步骤 290
9.8 绘制面积图 294
准备工作 294
操作步骤 295