R语言—Rattle包数据挖掘(5)

10467字▕ 17图▕ 预计阅读30分钟

Rattle包基于R语言开发的强大数据挖掘工具,图形交互式可视化界面,如同SPSS Modeler一样,可以让很多R初学者或R语言薄弱的同学完成数据挖掘工作。Rattle提供了数据清洗、简单统计检验、数据建模分析和模型评估。

数据建模包括:聚类、关联规则、决策树、随机森林、支持向量机、回归、神经网络和生存分析。

模型评估包括:混淆矩阵、风险图、Cost curve、Roc曲线、Hand图、Prv Ob图、Score等

数据建模或机器学习(算法)医学数据挖掘领域应用具有一定空间,使用SPSS软件可以实现决策树、神经网络、回归分析、生存分析和聚类分析等建模,此外SPSS Modeler(即以前的SPSS Clementine,平时所说的SPPS是指SPSS statistics)也可以实现,R语言、Python语言的建模和机器学习发挥空间就更大了,下面是在CNKI数据库检索的10篇文献,均采用了数据建模(机器学习)完成。

(左右滑动查看)

1

Rattle建模选项卡介绍

前面学习了Rattle的入门、描述性统计、检验假设和数据转换,今天主要学习数据建模,Rattle的建模包括9大类,分别为:聚类(Cluster)、关联规则(Association)、决策树(Tree)、随机森林(Forest)、自适应选择(Boost)、支持向量机(SVM)、线性回归(Linear)、神经网络(Neural net)、生存分析(Cox回归),如下图所示:

图1 Rattle聚类分析

图2 Rattle关联规则模型

图3 Rattle决策树、随机森林、SVM、回归

ANN和生存分析建模

Rattle的Linear模型不单单只是简单线性回归,包括:简单线性回归、广义线性回归、泊松回归、Logistic回归、Probit回归、多项式回归。

图4 Rattle回归模型

Rattle模型选项卡中“XXXX”表示的是生存分析建模,即Cox回归。

图5 Rattle生存分析建模

2

Rattle聚类模型

Rattle的聚类模型有四种算法:KMeans、Ewkm、Hierarchical、BiCluster,每个算法下都有不同参数,以KMeans算法为例,如下图所示:Clusters表示聚类数量,Seed表示设置随机种子,Runs可以重复建模,寻找最优模型。Stats聚类模型统计量,包括Cluster sizes、Data means、Cluster centers、Cluster SS。Plots Data输出变量可视化图,Plots Discriminant输出判别式坐标图。

聚类统计量,如下所示:

(左右滑动查看)

Plots Data、Discriminant图如下所示,这两个图输出在RStudio里面。

Rattle的层次聚类参数设置包括模型度量、方法和进程,可视化可以输出树形图,这个在SPSS中比较常见,如下所示。以前有同学交流怎么看树形图聚类情况,我们可以拿一把尺子从右向左移动,看有几条线被尺子斩断就可以了。

3

Rattle关联规则

Rattle的关联规则是基于Apriori算法的,模型有非常重要的三个参数,分别为:Support、Confidence和Min Length,Freq Plot输出频繁项直方图、Show Rules Plot输出可视化规则图。

关联规则结果的描述、参数情况:

(左右滑动查看)

规则输出:

(左右滑动查看)

Interesting Measures:

(左右滑动查看)

频繁项直方图

规则图

今天先学习聚类、关联规则模型,后续继续学习其他模型,在学习过程中遇到困难可以随时查看“Help”或者将光标放在模型位置会给出一些提示。

学习Rattle一定要学会查看“Log”选项卡,会把每一步操作的代码以文本形式展现,我们直接将代码复制到R中运行即可,同时,每一行代码都有注释。Rattle的可视化图很酷,是基于ggplot2包,这个包的数据可视化功能值得学习,ggplot2包的作者是R语言大咖Hadley Wickham,并出版了《ggplot2:数据分析与图形艺术》,由统计之都翻译成中文,西安交通大学出版社出版,值得入手一本。

“Log”中的关联规则代码

(左右滑动查看)

“Log”中的可视化代码

(左右滑动查看)

参考文献:

1.https://rattle.togaware.com/

2.https://bit.ly/rattle_data_mining

3.https://bit.ly/essentials_data_science

—END—

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181121G1ZYGJ00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券