一些读者觉得R语言零碎的东西太多了,无法记住那么多函数和功能,于是就问R语言有没有一种类似于SAS之EM或SPSS之Modeler的界面化操作。很幸运,Graham等人特地为“偷懒”的分析师写了rattle包,通过该包就可以实现界面化操作的数据分析、数据挖掘流程。 下面就跟大家详细介绍一些这款免费的工具:
首先,你会经历“一劳永逸”的过程:安装rattle包 不瞒您说,我首次在自己的64位Win7系统中安装rattle包时花费了不少功夫。当你install.packages('rattle')时,觉得非常轻松就下载好了,但是进入library(rattle)并输入rattle()时它会报告各种.dll文件不存在。如果您决定要试试,就下载缺失的dll文件到您的电脑里。 其次,我们来介绍一下rattle数据挖掘操作界面都有哪些东西: 1)数据源(Data)
2)数据探索与检验(Explore、Test)
3)数据变换(Transform)
4)数据挖掘(Cluster、Associate、Model)
5)模型评估(Evaluate)
最后,我们就用这个rattle做一个实战,数据集就使用C50包中的churnTrain,该数据集是德国某电信公司客户是否流失的数据集。 1)读取数据集选择好数据集后,点击“执行”,默认数据集将分为三个子集,即训练集占70%、训练集和检验集各占15%,最后将指定哪些变量为解释变量和被解释变量,如有不需要的变量,则选为“Ignore” 2)数据探索选择Summary单选、并选择Summary、Describe、Basic、Kurtosis等复选框后,看看都有哪些返回结果: Summary结果
3)数据挖掘判断客户是否流失,是一种分类问题,下面综合考虑使用Logistic回归、决策树、随机森林三种分类算法。 简单看一下这三种算法的结果: Logistic回归的结果:
4)模型评估这里我们使用混淆矩阵和ROC曲线两种评估模型的方法,具体结果见下图的展示:
本文只是带大家进入rattle这个界面化操作的数据分析和挖掘工具,更多探索和玩法还需要大家进一步研究。欢迎各位交流与探讨有关数据分析的问题。 |
|