R语言数据分析与挖掘 课件 第1-3章 初识数据分析与R语言、回归分析、关联分析_第1页
R语言数据分析与挖掘 课件 第1-3章 初识数据分析与R语言、回归分析、关联分析_第2页
R语言数据分析与挖掘 课件 第1-3章 初识数据分析与R语言、回归分析、关联分析_第3页
R语言数据分析与挖掘 课件 第1-3章 初识数据分析与R语言、回归分析、关联分析_第4页
R语言数据分析与挖掘 课件 第1-3章 初识数据分析与R语言、回归分析、关联分析_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章初识数据分析与R语言“文献筛选”的故事

在一项关于婴儿和儿童残疾的研 究中,美国Tufts医学中心筛选 了约33,000篇摘要 尽管Tufts医学中心的专家效率 很高,对每篇摘要只需30秒钟,但该工作仍花费了250小时每项新的研究都要重复

这个麻烦的过程!需筛选的文章数在不断显著增长!为什么学数据分析“文献筛选”的故事为了降低昂贵的成本,Tufts医学中心引入了机器学习技术邀请专家阅读少量摘要,标记为“有关”或“无关”分类模型对是否“有关”进行预测人类专家只需阅读50篇摘要,系统的自动筛选精度就达到93%人类专家阅读1,000篇摘要,则系统的自动筛选敏感度达到95%(人类专家以前需阅读33,000篇摘要才能获得此效果)为什么学数据分析色泽根蒂敲声好瓜青绿蜷缩浊响是乌黑蜷缩浊响是青绿硬挺清脆否乌黑稍蜷沉闷否决策树,神经网络,支持向量机,

Boosting,贝叶斯网,……模型训练数据(label)训练

新数据样本(浅白,蜷缩,浊响,?)

?=是类别标记 未知典型的数据挖掘过程

使用学习算法(learningalgorithm)

类别标记为什么学数据分析R是什么R是什么2014年数据分析常用语言排行榜1.1为什么学习R语言第一章绪论R语言主要优势(1)作图美观,完全免费为什么要学R(2)算法覆盖广,软件扩展易

作为统计分析工具,R语言几乎覆盖整个统计领域的前沿算法。

截止2017年2月25日,CRAN(ComprehensiveRArchiveNetwork)上已经有10162个可以获取的R扩展包,并且以每个月200多个包的速度发布,内容涉及各行各业,可以适用于各种复杂的统计,如:贝叶斯推断、分类方法、计量经济学、生态学、金融学、遗传学、机器学习、稳健统计、空间统计、生存分析、时间序列等多个方面。数千个R包,上万种算法,开发者都能找到可直接调用的函数实现。为什么要学R(3)算法覆盖广,软件扩展易为什么要学R

作为一个开源软件,R背后有一个强大的社区和大量的开放源码支持,获取帮助非常容易。

比如国外比较活跃的社区有GitHub和StackOverflow等,通常R包的开发者会先将代码放到GitHub,接受世界各地的使用者提出问题,然后修改代码,等代码成熟后再放到CRAN上发布。

国内最活跃的R社区就属统计之都以及统计之都旗下的COS论坛了。为什么要学R(4)强大的社区支持

Python虽然也支持命令模式,但是相对来说,更偏向于流程控制语句,也就是可以写一堆语句,然后执行。R本身基本上不需要用到流程控制(当然,它也支持流程控制)。(5)非过程模式Part/

01软件下载与安装1.1.1下载与安装进入R官方下载网址/。2.选择相应的操作系统,如果使用Windows系统,可以点击“DownloadRforWindows”。3.选择安装风格,建议选择基本安装。

4.点击“Download”下载安装程序。5.下载好后双击exe文件进行安装,安装好后在“开始”菜单里可以找到R程序,点击即可运行。2.RGUI在Windows的“程序”选项中找到相应的R程序,例如“Rx643.4.3”,点击执行1.命令行方式同时按下键盘上的

和R,在Windows的命令终端的提示符后上敲入R并且回车Rversion3.4.3(2017-11-30)--"Kite-EatingTree"Copyright(C)2017TheRFoundationforStatisticalComputingPlatform:x86_64-w64-mingw32/x64(64-bit)

R

'license()''licence()'

R.'contributors()''citation()'RR

1.1.2下载与安装Part/

02包的安装与加载包是R函数、数据、预编译代码以一种定义完善的格式组成的集合。R中的包存储在计算机上名为library的目录下,使用函数.libPaths()可以查看该文件夹在计算机中的具体路径,函数library()和search()则可分别显示已安装和加载的包列表。R已经预装了一组标准的包,其他包则可以通过下载安装来使用。目前CRAN上提供了上万个可使用的包。包的安装最受欢迎的5个包分别是:dplyr:一种数据操作的语法devtools:一组用于包开发的工具foreign:读取用其他软件如Minitab、S、SAS、SPSS和Stata等存储的数据cluster:聚类分析方法ggplot2:R语言图形工具包的安装不添加参数执行install.packages()将显示一个CRAN的镜像站点列表,选择相应的镜像(通常选择离自己最近的节点)后再选择要安装的包名即可可直接将包名作为参数传递给函数install.packages()进行下载安装>install.packages("stringr") #安装一个用于字符串处理的包

包的安装>str_length("HelloR!")>[1]8载入之后就可以直接调用包中定义的函数包安装后还需要载入到内存才能使用。以stringr包为例,执行library("stringr")可将对应的包载入>library("stringr")#载入字符串处理包stringr

包的加载与使用>str_length("HelloR!")>[1]8载入之后就可以直接调用包中定义的函数包安装后还需要载入到内存才能使用。以stringr包为例,执行library("stringr")可将对应的包载入>library("stringr")#载入字符串处理包stringr

包的加载与使用如果希望使用包中的函数,则需要明确指定该函数,调用“包名::函数名”自定义一个同名函数,就会观察到命名冲突的现象>str_length<-function(x)return+("Givemeasecond.Letmecounthowlong+thissentenceis!")>#自定义函数str_length与包中函数同名>str_length("HelloR!")[1]"Givemeasecond.Letmecounthowlongthissentenceis!">stringr::str_length("HelloR!")#现在使用的是得到字符串长度的函数[1]8命名冲突与解决Part/

03应用R实现数据操作最基本的图形:散点图x<-1:20#x坐标y<-x^2#y坐标plot(x,y,main="y=x^2")使用type参数,改变绘图类型。例如:绘制点线图plot(x,y,main="y=x^2",type="b")

每次调用plot(),现有的图形窗口都会被新的图形替代。使用下面的命令可以打开新的图形窗口进行绘图。在Linux系统下,执行x11();在Mac系统下,执行macintosh();在Windows下,执行windows()。创建基础图形可以通过修改一些图形参数选项来自定义一幅图形的多个特征,如字体、颜色、坐标轴、和标题等。opar<-par(no.readonly=T)par(lty=2,pch=15) x<-1:20y<-x^2plot(x,y,type="b")par(opar)直接给plot函数设置绘图参数也能实现同样的效果,但只是对单幅图片生效。

plot(x,y,type="b",lty=2,pch=15)符号和线条参数说明pch指定绘制点时使用的符号,参数数值及含义详见右图cex指定符号的大小。cex是一个数值,表示绘图符号相对于默认大小的缩放倍数。默认大小为1,1.5表示放大为默认值的1.5倍,0.5表示缩小为默认值的50%,等等lty指定线条类型,参数数值详见右图lwd指定线条宽度。lwd是以默认值的相对大小来表示的(默认值为1)。例如,lwd=2将生成一条两倍于默认宽度的线条符号和线条使用不同的颜色参数个性化图形各部位的色彩。可以选择通过颜色名称、十六进制的颜色值、RGB值或HSV值来指定颜色。col="white"、col="#FFFFFF"、col=rgb(1,1,1)和col=hsv(0,0,1)都是表示白色的等价方式。使用调色板中的颜色索引给col参数赋值也可以使用相应的色彩。默认调色板中的颜色向量为:>palette()[1]"black""red""green3""blue""cyan""magenta""yellow""gray"右边是常见的绘图函数颜色参数参数说明col绘图颜色col.axis坐标轴刻度颜色col.lab坐标轴名称颜色col.main图形标题颜色col.sub副标题颜色fg图形前景色bf图形背景色色彩使用调色板中颜色索引即可使用相应的颜色,例如:>pie(rep(1,length(pal)),labels=sprintf("%d(%s)",seq_along(pal),pal),col=pal)rainbow(n)函数可以从光谱色中均匀地选取n种颜色组成向量。>palette(rainbow(7))>pal<-palette()>pie(rep(1,length(pal)),labels=sprintf("%d(%s)",seq_along(pal),pal),col=pal)调色板恢复为默认>palette("default")色彩x<-1:20y<-x^2plot(x,y,ann=FALSE,col="tomato")title(main="标题",col.main="red",sub="副标题",col.sub="brown",xlab="x坐标轴",ylab="y坐标轴",col.lab="navy",cex.main=2,cex.sub=1.25,font.sub=3)标签与标题文字设置外观与字体。

参数说明cex基础缩放倍数cex.axis坐标轴刻度的缩放倍数cex.lab坐标轴标题的缩放倍数cex.main图形标题的缩放倍数cex.sub图形副标题的缩放倍数font字体样式。1常规,2加粗,3加斜,4加粗加斜,5符号字体font.axis坐标轴刻度的字体样式font.lab/main/sub坐标轴名称/标题/副标题名称字体样式ps字体磅值。文字的最终大小为cex*psfamily字族。例如serif衬线,sans无衬线,mono等宽在表达式中。可以使用类似于Tex的句法来生成数学符号、运算、公式和希腊字母。标签与标题文字>data(Titanic)>mat<-apply(Titanic,4,sum);mat

NoYes1490711>barplot(mat,main="存活情况",names=c("遇难","存活"))barplot(height,width=1,space=NULL,names.arg=NULL,beside=FALSE,horiz=FALSE,density=NULL,angle=45,...)Titanic是R自带的一个数据集。变量名取值说明Class1st,2nd,3rd,CrewSexMale,FemaleAgeChild,AdultSurvivedNo,Yes柱状图pie()函数用来创建饼状图,基本用法为pie(x,labels=names(x),radius=0.8,clockwise=FALSE,...)用饼图来查看泰坦尼克号上不同舱位的乘客和船员的比例>pie(apply(Titanic,1,sum),c("一等舱","二等舱","三等舱","船员"))饼图直方图使用离散化的方法对变量分组统计。hist(x,freq=TRUE,breaks=, right=TRUE,...)

>x<-rnorm(1000,mean=0,sd=1)>par(mfrow=c(1,2)) >hist(x)>hist(x,freq=F) >lines(density(x),lwd=2)直方图箱形图(box-plot)又称为盒须图、盒式图或箱线图,是一种用作显示一组数据分散情况的统计图,因其形状如同箱子而得名。箱形图通过绘制连续型变量的五数总括,即最小值、下四分位数(第25百分位数)、中位数(第50百分位数)、上四分位数(第75百分位数)以及最大值,描述了连续型变量的分布信息。boxplot()函数的一般形式:boxplot(x,...,range=1.5,width=NULL,outline=TRUE)对1000个正态分布的随机变量绘制箱形图>fig<-boxplot(x,main="箱形图")>paras<-c("最小值","下四分位数","中位数", "上四分位数","最大值")>text(1.25,fig$stats,paras,pos=4)用圆圈标出的点为离群点的值。把第一四分位数记为Q1,第三四分位数记为Q3,如果一个数值x满足x<Q1–1.5(Q3–Q1),或x>Q3+1.5(Q3–Q1),那么就被认为是离群点。箱型图谢谢观看第2章回归分析Part/

01简单线性回归分析

简单线性回归>eruption.lm<-lm(eruptions~waiting,data=faithful)>coeffs<-coefficients(eruption.lm)>coeffs#一元线性回归的参数:截距、斜率(Intercept)waiting-1.874015990.07562795>plot(eruptions~waiting,faithful,#绘图变量 col="blue",#绘图参数 main="老忠实线性回归结果",#标题 xlab="等待时间",#x轴标签 ylab="持续喷发时间") #y轴标签>fit<-lm(eruptions~waiting,data=faithful)>abline(fit,col="red")#画出回归模型lm参数:因变量eruptions,自变量waiting,数据集faithful。使用coefficients()来显示所得到的回归方程中的系数。简单线性回归>waiting<-80#等待时间>duration<-coeffs[1]+coeffs[2]*waiting>duration(Intercept)4.1762>newdata<-data.frame(waiting=c(80,50))#封装参数>predict(eruption.lm,newdata) 124.1762201.907381使用模型进行预测。简单线性回归

简单线性回归

简单线性回归

简单线性回归qq图可用于直观验证一组数据是否来自于某个给定的分布,或者验证两组数据是否来自同一分布。根据所讨论的分布计算出每个数据点的理论预期值,如果数据确实遵循假定的分布,那么在qq图上的点将大致散落在一条直线上。正态概率图就是一种把数据集与正态分布进行比较的图形化工具。例如,可以比较线性回归模型的标准化残差来检验残差是否真正地符合正态分布规律。>qqnorm(eruption.stdres,ylab="标准化残差",xlab="正态得分",main="老忠实喷发持续时间")>qqline(eruption.stdres)

简单线性回归Part/

02多项式回归分析

指标名说明crim按镇分布的人均犯罪率zn居住区域地块超过25,000平方英尺的比例indus每个镇中非零售商业用地的比例chas与查尔斯河有关的哑数据(1表示河流范围,0为其他)nox一氧化氮浓度(partsper10million)rm每户平均房间数age1940年前修建的户主居住的单位数dis到5个波士顿就业中心的加权距离rad到达放射状高速公路方便程度的指数tax每万美元的全额房产税率ptratio每个镇的小学生师比

b1000(B-0.63)^2其中B是每个镇的黑人比例lstat低收入人口比例medv一千美元为单位的户主居住房屋的价格中位值多项式回归分析把medv当作因变量,而把其余的指标作为自变量,可以建立起一个多元线性回归模型如下:使用lm()函数计算得出模型并保存在变量Boston.lm中>Boston.lm<-lm(medv~.,data=BostonHousing)多元线性回归的判定系数>summary(Boston.lm)$r.squared[1]0.7406427

多项式回归分析

多项式回归分析Part/

03在SLID数据集上研究线性回归案例操作见课本谢谢观看第3章关联分析Part/

01关联分析的准备工作以对消费者的建模为例,举一些场景下的常用算法对应:划分消费者群体:聚类,分类;购物篮分析:相关,聚类;购买额预测:回归,时间序列;满意度调查:回归,聚类,分类;什么是关联分析数据挖掘主要模型:分类、聚类、预测及关联什么是关联分析什么是关联分析什么是关联分析

关联规则算法常用来描述数据之间的相关关系,关联规则模式属于描述型模式,挖掘关联规则的算法和聚类算法类似,属于无监督学习的方法。什么是关联分析

关联规则就是由关联的规则,它的定义是:两个不相交的非空集合X、Y,如果由X->Y,就说X->Y是一条关联规则。其中X表示的是两个互斥事件,X称为前因(antecedent),Y称为后果(consequent),上述关联规则表示X会导致Y。关联规则的强度用支持度(support)和置信度(confidence)来描述。在实际应用中,商品在销售中存在一定的关联性。如果大量的数据表明,消费者购买A产品的同时也会同时购买B产品,那么A和B之间存在关联性,记为A->B。例如,在超市中,常常会看到两个商品的捆绑销售,很有可能就是关联分析的结果。什么是关联分析什么是关联分析时间(Time)商品(Items)T1{牛奶,面包}T2{面包,尿布,啤酒,鸡蛋}T3{牛奶,尿布,啤酒,可乐}T4{面包,牛奶,尿布,啤酒}T5{面包,牛奶,尿布,可乐}Part/

02Apriori规则1使用Apriori规则完成关联挖掘Apriori是广为人知的关联规则挖掘算法,它依靠逐层的广度优先策略生成候选项集,首先逐层找到所有的频繁项集(项集支持度大于给定值),例如先找到1-频繁项集,然后基于1-频繁项集找到2-频繁项集,依次递归,基于k-频繁项集生成新的k+1频繁项集,直至找不到新的频繁项集为止。Apriori原理(1)寻找所有不低于最小支持度的项集(频繁项集);(2)使用频繁项集生成规则。PS:

支持度:数据集中包含该项集的记录所占的比例;

频繁项集:支持度大于最小支持度的项集。对数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论