【数据挖掘】rattle:数据挖掘的界面化操作

R语言是一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。这里的统计计算可以是数据分析、建模或是数据挖掘等,通过无数大牛提供的软件包,可以帮我们轻松实现算法的实施。

一些读者觉得R语言零碎的东西太多了,无法记住那么多函数和功能,于是就问R语言有没有一种类似于SAS之EM或SPSS之Modeler的界面化操作。很幸运,Graham等人特地为“偷懒”的分析师写了rattle包,通过该包就可以实现界面化操作的数据分析、数据挖掘流程。下面就跟大家详细介绍一些这款免费的工具:

上 图红色区域就是数据分析与挖掘的流程,包括:数据源(Data)-->数据探索与检验(Explore、Test)-->数据变换 (Transform)-->数据挖掘(Cluster、Associate、Model)-->模型评估(Evaluate)。

首先,你会经历“一劳永逸”的过程:安装rattle包

不 瞒您说,我首次在自己的64位Win7系统中安装rattle包时花费了不少功夫。当你install.packages('rattle')时,觉得非 常轻松就下载好了,但是进入library(rattle)并输入rattle()时它会报告各种.dll文件不存在。如果您决定要试试,就下载缺失的 dll文件到您的电脑里。

其次,我们来介绍一下rattle数据挖掘操作界面都有哪些东西

1)数据源(Data)

一 切数据分析与挖掘都起源于数据,故第一步就是往rattle中导入数据源,数据源可以是外部数据源,如txt文件、csv文件、Excel文件等;也可以 是数据库数据,通过ODBC连接诸如SQL Server、MySQL等数据库;也可以是当前R空间下的数据集;也可以是外部R数据集文件、还可以是R包自带的数据集。

2)数据探索与检验(Explore、Test)

有了数据后,需要进行数据探索,如汇总(Summary)、分布(Distributions)、相关性分析(Correlation)、主成分分析(Principal Components)、t检验、F检验、K-S正态性检验、Wilcoxon检验等

3)数据变换(Transform)

当数据存在缺失或需要从新编码、标准化时,就需要这里的数据变换了

4)数据挖掘(Cluster、Associate、Model)

当数据清洗干净或对数据有了基本了解后,就要进入数据挖掘过程,rattle工具提供了常用的数据挖掘算法,如:K-means聚类、层次聚类、关联规则、决策树、随机森林、支持向量机、线性回归、Logistic回归、神经网络等

5)模型评估(Evaluate)

当模型选定,并进入模型运算后,需要对模型进行评估,选择比较理想的模型用着后期数据的部署。有关模型评估,rattle提供了混淆矩阵、风险矩阵、成本曲线、Lift曲线、ROC曲线等方法。

最后,我们就用这个rattle做一个实战,数据集就使用C50包中的churnTrain,该数据集是德国某电信公司客户是否流失的数据集。

1)读取数据集

选择好数据集后,点击“执行”,默认数据集将分为三个子集,即训练集占70%、训练集和检验集各占15%,最后将指定哪些变量为解释变量和被解释变量,如有不需要的变量,则选为“Ignore”

2)数据探索

选择Summary单选、并选择Summary、Describe、Basic、Kurtosis等复选框后,看看都有哪些返回结果:

Summary结果

Discribe结果

Basic基本统计量结果

还有很多数据探索的内容,这里就不一一说明了,希望读者能自行执行,并了解数据的大致情况。

3)数据挖掘

判断客户是否流失,是一种分类问题,下面综合考虑使用Logistic回归、决策树、随机森林三种分类算法

简单看一下这三种算法的结果

Logistic回归的结果:

决策树的结果:

随机森林的结果:

4)模型评估

这里我们使用混淆矩阵和ROC曲线两种评估模型的方法,具体结果见下图的展示:

结果显示,三个模型的优劣顺序为:随机森林、决策树和Logistic回归

本文只是带大家进入rattle这个界面化操作的数据分析和挖掘工具,更多探索和玩法还需要大家进一步研究。欢迎各位交流与探讨有关数据分析的问题。

刘顺祥,数据分析师,热爱数据分析与挖掘工作,擅长使用R语言,目前自学Python语言。

来源:数据人网

原文链接:http://shujuren.org/index.php/Article/update/aid/167

1、回复“数据分析师”查看数据分析师系列文章

2、回复“案例”查看大数据案例系列文章

3、回复“征信”查看相关征信的系列文章

4、回复“可视化”查看可视化专题系列文章

5、回复“SPPS”查看SPSS系列文章

6、回复“答案”查看hadoop面试题题目及答案

7、回复“爱情”查看大数据与爱情的故事

8、回复“笑话”查看大数据系列笑话

9、回复“大数据1、大数据2、大数据3、大数据4”查看大数据历史机遇连载

PPV课大数据ID: ppvke123 (长按可复制)

本公众号专注大数据和数据科学领域,分享领域知识和相关技术文章,探索大数据商业价值,培养和挖掘大数据专业人才,欢迎大家关注!

原文发布于微信公众号 - PPV课数据科学社区(ppvke123)

原文发表时间:2016-02-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PPV课数据科学社区

【必看工具】可视化图表表达的10个错误。

数据可视化是一个沟通复杂信息的强大武器。通过可视化信息,我们的大脑能够更好地抓取和保存有效信息,增加信息的印象。但如果数据可视化做的较弱,反而会带来负面效果。错...

31060
来自专栏CSDN技术头条

25个Java机器学习工具&库

本列表总结了25个Java机器学习工具&库: 1. Weka集成了数据挖掘工作的机器学习算法。这些算法可以直接应用于一个数据集上或者你可以自己编写代码来调用。W...

27180
来自专栏ATYUN订阅号

【干货】十大流行AI框架和库的优缺点分析

近年来,由于AI领域的迅猛发展,AI这一词汇已经成为一个流行语。AI曾被称为是一个书呆子和天才的领域,但由于各种库和框架的发展,使更多的人开始了他们的AI之旅。...

50770
来自专栏月色的自留地

从锅炉工到AI专家(11)(END)

25370
来自专栏机器人网

一个简单的多机器人编队算法实现--PID

用PID进行领航跟随法机器人编队控制 课题2:多机器人编队控制 研究对象:两轮差动的移动机器人或车式移动机器人 研究内容:平坦地形,编队的保持和避障,以及避障和...

53870
来自专栏人工智能头条

如何使用 CNN 推理机在 IoT 设备上实现深度学习

18010
来自专栏技术翻译

10个用于人工智能的开源工具/框架

TensorFlow™是一个开源软件库,最初由研究Google Brain Team的研究人员和工程师开发。TensorFlow用于使用数据流图进行数值计算。图...

2K20
来自专栏机器之心

业界 | 微软RobustFill:无需编程语言,让神经网络自动生成程序

选自Microsoft Research blog 作者:Rishabh Singh等 参与:李泽南 长久以来,摆脱编程语言的束缚,让计算机自我生成程序一直是开...

36150
来自专栏ATYUN订阅号

告别Python,用神经网络编写的软件走向2.0时代

有时人们把神经网络称为“机器学习工具箱中的另一种工具”。有时你可以用它们来赢得Kaggle的比赛。但是,这种解释完全见木不见林。神经网络不只是另一种分类器,它们...

39450
来自专栏人工智能头条

25个Java机器学习工具库

36560

扫码关注云+社区

领取腾讯云代金券