登录
首页精彩阅读数据挖掘-R语言编程技巧
数据挖掘-R语言编程技巧
2016-06-13
收藏

本文内容摘自CDA数据科学家训练营数据挖掘R语言课程。

【基本操作】


清空工作台:rm(list=ls())


清除内存:gc()


看帮助:library(help="fpc")


做完函数直接输出:(centered<-scale(x,scale=FALSE))   直接外加括号即可


CPU运行时间:systerm.time()


看数据第一行:head()


看最佳迭代次数:best.iter()


打印输出:print(paste("K=",i))


导出文件:sink(file="m.txt")  写入文件

                    sink()   关闭文件

【数据预处理】


随机取样:dat.test<-dat.scale[sample(nrow(dat.scale),1000),]  不放回随机取样


查看数据类型:str(dat)

统计缺失值:

View(data.frame(apply(dat,2,function(x) sum(is.na(x)))))

View(data.frame(sapply(data.function(x) sum(is.na(x)))))

改变变量名:top$Name="Top 5"

                        within函数

                        transform函数

                        mutate函数

    (可以让每行代码简洁)


取子类:

trainx<-train[,!names(train)%in%c('rid','segment','var_bin','var_bin2')]   正确方法

trainx<-train[,!names(,c('rid','segment','var_bin','var_bin2')]   错误方法,不能直接删除变量名代表的列

dat.sub<-dat[,substr(names(dat),1,3)=="R1_"]

利用字符串截取函数,截取第1到3个字母,与R1比较(适用于变量名称较统一,数据库中有若干种不同类型的数据)

scale函数:与apply(x,2,sd)作用一致,按列求方差,最后只有一行,而SCALE则是对全体数据都标准化

加入一列:clus<-data.frame(cluster=cluster.km$cluster,dat.sub)

加入的列名为cluster,数据为聚类后的分类名


【字符串操作】


字符串截取:substr(name(dat),1,3)

字符串截取函数:

dat.sub<-dat[,substr(names(dat),1,3)=="R1_"]


【特定数据选择及处理】

筛选前5名:top5=head(chinapm[order(chinapm$PM,decreasing=T),],5)

分组求和/平均:

sqldf包   利用sql求和

aggregate函数 :

clus_profile<-aggregate(,-cluster,data=clus,FUN=mean)  子主题

aggregate(formula,data,FUN)

plyr包

dply包

利用factor

行列求和/平均:

colSums(dat.scale)

rowMeans

【绘图】

柱状图:hist(dat$R1_MV001  可用来数据的初步探索

折线图:plot(x,y,type)  type:p-points,l-line,b-both

plot(1:10,wss,type="b",xlab="Number of Cluster",ylab="Within groups sum of squares"

决策树

决策树是一种预测模型,同时也能能处理缺失值

随机森林

不能处理缺失值,随机选择变量

线性回归

glm包:需要手动选择进入模型的变量


glmnet包:加强版,自动选择进入模型的变量

【关联分析】

arules包: Apriori算法,Mining Associations with Apriori

【多次跑】

set.seed(12345)

【哑变量】

即虚拟变量(Dummy Variable),又称虚设变量、名义变量,是量化了的质变量,通常取值为0或1


数据分析咨询请扫描二维码

客服在线
立即咨询