图书简介:
目 录
第1章 R软件的使用方法 1
1.1 R软件介绍和安装 1
1.1.1 R软件介绍 1
1.1.2 R软件的安装 1
1.1.3 R studio的安装 2
1.2 R语言基本运算 3
1.2.1 R语言的数值运算 3
1.2.2 R语言的向量 5
1.2.3 R语言的向量运算 6
1.3 R语言缺失数据 7
1.3.1 R语言缺失数据类型 7
1.3.2 R语言缺失数据识别 7
1.3.3 R语言缺失数据处理 8
1.4 矩阵的运算 8
1.4.1 矩阵建立 8
1.4.2 矩阵计算 10
1.4.3 矩阵分解 11
1.5 列表和数据框 12
1.5.1 列表介绍 12
1.5.2 数据框介绍 13
1.6 R软件的数据读/写 14
1.7 R软件包介绍 15
1.7.1 包的基础知识 15
1.7.2 自动安装包 15
1.7.3 通过硬盘加载包 16
1.7.4 常见包介绍 16
1.8 R语言的函数 16
1.8.1 循环结构 16
1.8.2 条件执行结构 17
1.8.3 自定义函数 18
1.9 R软件绘图功能介绍 19
1.9.1 高级绘图函数 20
1.9.2 低级绘图函数 22
1.9.3 用ggplot2包进行绘图 25
第2章 C4.5算法 30
2.1 算法简介 30
2.2 算法基本原理 30
2.3 算法的R语言实现 33
2.3.1 ctree函数介绍 33
2.3.2 C4.5决策树的R语言实例 33
2.4 小结 35
参考文献 36
第3章 k-means算法 37
3.1 算法简介 37
3.2 算法基本原理 37
3.3 算法的R语言实现 39
3.3.1 kmeans函数介绍 39
3.3.2 k-means聚类的R语言实例 39
3.4 小结 41
参考文献 42
第4章 CART算法 44
4.1 算法简介 44
4.2 算法基本原理 44
4.2.1 CART算法的建树 44
4.2.2 CART算法的剪枝 45
4.2.3 算法过程实例 46
4.3 算法的R语言实现 48
4.3.1 rpart函数介绍 48
4.3.2 CART决策树的R语言实例 48
4.3.3 rpart函数的补充说明 50
4.4 小结 52
参考文献 52
第5章 Apriori算法 53
5.1 算法简介 53
5.2 算法基本原理 53
5.2.1 挖掘频繁模式和关联规则 53
5.2.2 Apriori算法 55
5.2.3 AprioriTid算法 61
5.2.4 挖掘顺序模式 64
5.2.5 Apriori算法的一种改进算法 65
5.3 算法的R语言实现算法 66
5.3.1 apriori函数介绍 66
5.3.2 Apriori模型 66
5.4 小结 68
参考文献 68
第6章 EM算法 70
6.1 算法简介 70
6.2 算法基本原理 71
6.2.1 基础理论 71
6.2.2 算法过程实例 71
6.3 算法的R语言实现 76
6.3.1 mclust函数介绍 76
6.3.2 EM标准模型的R语言实现 77
6.3.3 存在噪声的EM算法的R语言实现 79
6.3.4 EM算法应用于高斯混合模型(GMM) 81
6.3.5 EM算法应用于Iris数据集 84
6.4 小结 84
参考文献 85
第7章 PageRank算法 86
7.1 算法简介 86
7.2 算法基本原理 86
7.3 算法的R语言实现 89
7.3.1 page.rank函数介绍 89
7.3.2 igraph包实现PageRank算法 89
7.3.3 自定义PageRank算法的R语言实现 90
7.3.4 补充实例 91
7.4 小结 95
参考文献 96
第8章 AdaBoost算法 97
8.1 算法简介 97
8.2 算法基本原理 97
8.2.1 Boosting算法 97
8.2.2 AdaBoost算法 98
8.2.3 算法过程实例 101
8.3 算法的R语言实现 102
8.3.1 boosting函数介绍 102
8.3.2 R语言实例 102
8.4 小结 104
参考文献 104
第9章 kNN算法 105
9.1 算法简介 105
9.2 算法基本原理 105
9.2.1 算法描述 105
9.2.2 算法流程 107
9.3 算法的R语言实现 108
9.3.1 knn函数介绍 108
9.3.2 利用class包中的knn函数建立模型 108
9.3.3 kNN算法应用于Iris数据集 109
9.3.4 kNN算法应用于Breast数据集 111
9.4 小结 113
参考文献 114
第10章 Naive Bayes算法 115
10.1 算法简介 115
10.2 算法基本原理 115
10.2.1 基础理论 115
10.2.2 算法过程实例 118
10.3 算法的R语言实现 120
10.3.1 naiveBayes函数介绍 120
10.3.2 利用e1071包中的naiveBayes函数建立模型 120
10.3.3 算法拓展——其他改进的Naive Bayes算法 121
10.4 小结 123
参考文献 123
第11章 SVM算法 125
11.1 算法简介 125
11.2 算法基本原理 125
11.2.1 基础理论 125
11.2.2 软间隔优化 127
11.2.3 核映射 129
11.2.4 SVM算法的过程 130
11.2.5 SVC算法过程实例 130
11.3 算法的R语言实现 132
11.3.1 svm函数介绍 132
11.3.2 标准分类模型 133
11.3.3 多分类模型 133
11.3.4 SVM回归 134
11.3.5 SVM拓展包(kernlab包) 135
11.3.6 SVM算法应用于Iris数据集(e1071包) 135
11.3.7 SVM算法应用于Iris数据集(kernlab包) 136
11.4 小结 137
参考文献 138
第12章 案例分析 139
12.1 关联规则案例分析 139
12.1.1 问题描述 139
12.1.2 R语言实现过程 139
12.1.3 不同参数的Apriori模型 141
12.1.4 小结 145
12.2 kNN算法案例分析 145
12.2.1 问题描述 145
12.2.2 R语言实现过程 145
12.2.3 小结 148
12.3 Naive Bayes算法案例分析 149
12.3.1 问题描述 149
12.3.2 R语言实现过程 149
12.3.3 小结 152
12.4 CART算法案例分析 152
12.4.1 问题描述 152
12.4.2 R语言实现过程 152
12.4.3 小结 159
12.5 AdaBoost算法案例分析 159
12.5.1 问题描述 159
12.5.2 R语言实现过程 159
12.5.3 小结 161
12.6 SVM算法案例分析 162
12.6.1 问题描述 162
12.6.2 R语言实现过程 162
12.6.3 小结 167
展开
前 言
随着大数据时代的到来>各行各业的核心竞争力日益体现在数据转化为信息和知识的速度和能力上>也就是取决于数据挖掘的应用水平。近10年来>数据挖掘这一学科发展迅速>学者们在研究大量不同类型数据挖掘算法的同时>也将数据挖掘算法与机器学习等内容进行了深度融合。
当前>数据挖掘方面的著作较多>主要分为两大类:其一>具有完整体系的理论性图书;其二>面向具体应用的技术性图书。前者主要服务于科研和教学>侧重于原理的完整性>但前沿理论介绍偏少;后者则偏重于介绍解决某一领域实际问题的方法>但对具体方法鲜有经验的总结。
本书介绍的10种算法——C4.5算法、k-means算法、CART算法、Apriori算法、EM算法、PageRank算法、AdaBoost算法、kNN算法、Naive Bayes算法、SVM算法>是在中国香港举办的2006年度IEEE数据挖掘国际会议(ICDM> http://www.cs.uvm.edu/~icdm/)上与会学者遴选出来的10种经典数据挖掘算法。本书在介绍这些算法的基础上>利用自由、免费、源代码开放的统计计算和统计制图R软件介绍了各算法的实现>具有如下特色。
第一>适应学科发展>推出时间恰当。2016年2月>北京大学、对外经济贸易大学、中南大学首次成功申请到“数据科学与大数据技术”本科新专业;2017年3月第二批32所高校获批该专业;2018年3月第三批248所高校获批该专业。至此>全国共有283所高校开设了“数据科学与大数据技术”专业。该专业的学制为4年>毕业生授予工学学位或理学学位。
第二>汇集经典算法>具有较高权威性。本书内容覆盖分类、聚类、统计学习、关联分析和链接分析等数据挖掘相关算法>涉及数据挖掘、机器学习和人工智能等研究领域>必将使数据挖掘理论应用于更大范围的实际应用之中>激励更多数据挖掘领域的科研工作者探索、研究、发展这些算法的新内容。
第三>算法原理简洁>R语言实现完整。本书通过算法简介、算法基本原理、算法的R语言实现及小结等内容>简单明了地讲解了数据挖掘的10种算法>将利用R语言实现算法的具体过程完整地呈现给读者>使读者在熟练掌握理论知识的同时>快速获得解决实际问题的技巧>提升职业能力。读者可登录华信教育资源网www.hxedu.com.cn免费下载算法实例代码。
希望通过本书介绍这10种经典算法及其R语言实现>能够有助于推动数据挖掘领域的研究与发展。
由于编著者水平所限>书中难免有错误和不当之处>敬请读者批评指正。
编著者
展开