用R软件做聚类分析的例子ppt课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《用R软件做聚类分析的例子ppt课件.ppt》由会员分享,可在线阅读,更多相关《用R软件做聚类分析的例子ppt课件.ppt(95页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、SPSS:这是一个很受欢迎的统计软件这是一个很受欢迎的统计软件u容易操作,容易操作,u输出漂亮,输出漂亮,u功能齐全,功能齐全,u价格合理。价格合理。u对于非统计工作者是很好的选择。对于非统计工作者是很好的选择。SAS:这是功能这是功能非常非常齐全的软件;齐全的软件;u美国政府政策倾斜美国政府政策倾斜(“权威性权威性”)u许多美国公司使用。许多美国公司使用。u价格不菲价格不菲,每年交费每年交费.即使赠送即使赠送,条件苛刻条件苛刻u尽管现在已经尽量尽管现在已经尽量“傻瓜化傻瓜化”,仍然需要一定的训,仍然需要一定的训练才可以进入。练才可以进入。R软件软件:免费的:免费的,志愿者管理的软件。志愿者管
2、理的软件。u编程方便,语言灵活,图形功能强大编程方便,语言灵活,图形功能强大u有不断加入的各个方向统计学家编写的统计软件包。有不断加入的各个方向统计学家编写的统计软件包。也可以自己加入自己算法的软件包也可以自己加入自己算法的软件包.u这是发展最快的软件,受到世界上统计师生的欢迎。这是发展最快的软件,受到世界上统计师生的欢迎。是用户量增加最快的统计软件。是用户量增加最快的统计软件。u对于一般非统计工作者来说,主要问题是它没有对于一般非统计工作者来说,主要问题是它没有“傻瓜化傻瓜化”。lMinitab:这个软件是很方便的功能强大而又齐全的:这个软件是很方便的功能强大而又齐全的软件,也已经软件,也已
3、经“傻瓜化傻瓜化”,在我国用的不如,在我国用的不如SPSS与与SAS那么普遍。那么普遍。lEviews:这是一个主要处理回归和时间序列的软件。:这是一个主要处理回归和时间序列的软件。lGAUSS:这是一个很好用的统计软件,许多搞经:这是一个很好用的统计软件,许多搞经济的喜欢它。主要也是编程功能强大。目前在我国济的喜欢它。主要也是编程功能强大。目前在我国使用的人不多。使用的人不多。lMATLAB:这也是应用于各个领域的以编程为主的这也是应用于各个领域的以编程为主的软件,在工程上应用广泛。但是统计方法不多。软件,在工程上应用广泛。但是统计方法不多。R的历史lS语言在语言在1980年代后期在年代后期
4、在AT&T实验室开发实验室开发.lR 项目由项目由Auckland 大学统计系的大学统计系的Robert Gentleman和和Ross Ihaka于于1995年开始的年开始的.l它很快得到广泛用户的欢迎它很快得到广泛用户的欢迎. 目前它是由目前它是由R核心发展核心发展团队维持团队维持;它是一个由志愿者组成的工作努力的国际它是一个由志愿者组成的工作努力的国际团队团队下载下载R软件软件http:/www.r-project.org学习网站http:/www.biosino.org/pages/newhtm/r/schtml/R软件的使用软件的使用1数据描述性统计数据描述性统计2回归分析回归分析3
5、判别分析判别分析4聚类分析聚类分析5主成分分析主成分分析6因子分析因子分析7n 基本语法基本语法n 向量向量n 矩阵矩阵 n list与与data.framen 读写数据文件读写数据文件n 控制语句与自定义函数控制语句与自定义函数一一. R软件的使用软件的使用n 基本语法基本语法1. 变量使用即定义变量使用即定义: 变量名区分大小写变量名区分大小写, 也可用中文命名也可用中文命名 变量赋值可采用变量赋值可采用4种形式:种形式:=,, assign() 变量类型自动由变量赋值确定。变量类型自动由变量赋值确定。 a=10; bc ; assign(“d”,40)中国中国=“中华人民共和国中华人民共
6、和国” #生成字符串变量生成字符串变量2.注释符号注释符号 # 语句连接符语句连接符 ;3. 算术运算符算术运算符: +,-,*,/,(乘方乘方),% (模模), %/% (整除整除) 4.常用的数学函数有常用的数学函数有:abs , sign , log , log2, log10 , sqrt , exp , sin , cos , tan , acos , asin, atan , cosh , sinh, tanh5. 查看帮助查看帮助 help(round) ?absn 向量向量 向量的赋值向量的赋值(一维数组一维数组, 下标从下标从1开始开始) a=c(d1,d2,d3,) 间隔为
7、间隔为1的等差序列的等差序列: a:b 指定间隔的等差序列指定间隔的等差序列: seq(from,to,by) seq(length, from, by) 重复序列:重复序列: rep(vec, times) rep(vec,times,len,each) a=c(3,5,8,10); b=1:10; c=seq(1,10,2); d=seq(-pi,pi, 0.2) e=rep(a,3); f=rep(a, 2, each=3) 随机向量随机向量 rnorm(10) #10个服从标准正态分布的随机数个服从标准正态分布的随机数a=1:5(b=1:5) #同上,只不过显示出来同上,只不过显示出来
8、a2 #取出取出a中第二个元素中第二个元素ac(2,4)=c(4,8) #修改修改a中第中第2、4个元素分别为个元素分别为4、8a-5 #扣除第扣除第5个元素取出来个元素取出来a3 #判断判断a中元素是否小于中元素是否小于31 TRUE TRUE FALSE FALSE FALSEaa0,1 #第第1列大于列大于0的元素的元素x,-c(1,3) #没有第没有第1、3列的列的xx-2,-c(1,3) #没有第没有第2行、第行、第1、3列的列的x.1.矩阵的元素访问矩阵的元素访问3. 向量和数组向量和数组/矩阵的转化矩阵的转化: 只要定义向量的只要定义向量的维数维数即可即可实现向量和数组转化实现向
9、量和数组转化c=1:12; a=matrix(c, nrow=2,ncol=6)dim(c)=c(3,4) b=as.vector(c)A=diag(c(1,4,5) #以向量为对角元生成对角矩阵以向量为对角元生成对角矩阵a=diag(A) #获取矩阵的对角元获取矩阵的对角元 4.多维数组 a=array(data=1:24,dim=c(2,3,4)a,1 names(stu) #得到所有的对象名得到所有的对象名 stu=data.frame(name=c(Tom, Rose), age=c(30,32) names(stu) #得到所有的变量名得到所有的变量名 colnames(stu) #
10、列名,同上列名,同上rownames(stu) #得到行名得到行名 attach(x) #把数据框中的变量链接到内存中把数据框中的变量链接到内存中x=data.frame(matrix(1:6,nrow=2) #矩阵转化为数据框矩阵转化为数据框x=data.frame(id=101:120,score=round(rnorm(20,70,10)#取出前两行数据x1:2,#选出score60的数据xx2|t|) (Intercept) 3.36014 2.06876 1.624 0.128 x 0.82006 0.08895 9.219 4.58e-07 *-Signif. codes: 0 *
11、 0.001 * 0.01 * 0.05 . 0.1 1 Residual standard error: 3.243 on 13 degrees of freedomMultiple R-squared: 0.8673, Adjusted R-squared: 0.8571 F-statistic: 84.99 on 1 and 13 DF, p-value: 4.584e-07 若需编程,很多信息存放在lm和summary对象中flm$coef #得到回归系数flm$resi #得到残差向量flm$fitt #得到拟合向量summary(flm)$sigma #模型残差的标准差的估计量su
12、mmary(flm)$r.squared #决定系数R2summary(flm)$adj.r.squared #修正后的决定系数#预测,注意第二个参数为数据框类型,成员名称必须与原始的自变量一致predict(flm,data.frame(x=c(14,26)predict(flm,data.frame(x=c(14,26),interval=prediction) #区间预测 fit lwr upr1 14.84093 7.472051 22.20982 24.68160 17.389301 31.9739x=runif(30,0,10) #均匀分布的随机数均匀分布的随机数x=sort(x)
13、 y=3*x-0.2*x2+rnorm(x) # y与与x的准确关系的准确关系plot(x,y)l1=lm(yx);l2=lm(yx+0);l3=lm(yx+I(x2); l4=lm(yx+I(x2)+0)abline(l1,col=red,lty=1); abline(a=0,b=l2$coef,col=green,lty=2)lines(x,l3$fit,col=blue,lty=3)lines(x,l4$fit,col=orange,lty=4)legend(bottomright, legend=c(线性, 无常数项线性, 二次, 二次无常数项二次无常数项),col=c(red, gr
14、een, blue, orange),lty=1:4)实验二:最小二乘估计的求解及检验实验二:最小二乘估计的求解及检验n全局挑选最佳自变量组合全局挑选最佳自变量组合 library(leaps) r=summary(regsubsets(y.,data=X) n=nrow(X) aic=n*log(r$rss/n)+2*apply(r$which,1,sum) #计算AIC统计量 data.frame(r$outmat,r$rss,r$rsq,r$adjr2,r$cp,AIC=aic)例:水泥放热数据挑选最佳自变量组合例:水泥放热数据挑选最佳自变量组合 x1 x2 x3 x4 y1 7 26
15、6 60 78.52 1 29 15 52 74.33 11 56 8 20 104.34 11 31 8 47 87.65 7 52 6 33 95.96 11 55 9 22 109.27 3 71 17 6 102.78 1 31 22 44 72.59 2 54 18 22 93.110 21 47 4 26 115.911 1 40 23 34 83.812 11 66 9 12 113.313 10 68 8 12 109.4残差平方和残差平方和决定系数决定系数R2修正后的决定系数修正后的决定系数Cp统计量统计量AIC统计量统计量 step(lm(y.,data=X) step(l
16、m(y1,data=X),+x1+x2+x3+x4)n逐步回归逐步回归实验三:回归分析中的自变量的挑选实验三:回归分析中的自变量的挑选 四四.判别分析判别分析n距离判别距离判别nBayes判别判别nfisher判别判别#计算马氏距离mahalanobis(x, center, cov, inverted=FALSE, .) n距离判别距离判别某总体的中心即均值向量某总体的协方差阵若设为TRUE,表明cov已求逆。默认为Falsedda1=function(x,newx=NULL) #x 为训练样本,最后一列为类别为训练样本,最后一列为类别, newx为待判样本为待判样本 x=as.matrix
17、(x); p=ncol(x)-1; #变量个数变量个数 k=max(x,p+1); #类别个数类别个数 n=nrow(x); #已知数据的个数已知数据的个数 if(is.null(newx)|ncol(newx)!=p) newx=x,1:p #如果待判样本如果待判样本newX为空,则为训练样为空,则为训练样本本 m=nrow(newx); #待判数据的个数待判数据的个数 md=matrix(-1,m,k); #距离矩阵距离矩阵k列,分别为到列,分别为到k个总体的距离个总体的距离 colnames(md)=paste(Dis,1:k,sep=); newClass=rep(-1,m); #新的
18、类别新的类别 cov_each=matrix(0,nrow=p,ncol=p) ; for(i in 1:k) temp=xx,p+1=i,1:p; center=apply(temp,2,mean); #计算当前总体的中心计算当前总体的中心 cov_each=cov(temp) md,i=mahalanobis(newx,center,cov_each);# 计算待判样本到当前总体的马氏距计算待判样本到当前总体的马氏距离离 newClass=apply(md,1,which.min); #距离矩阵距离矩阵md每一行最小的列就是归属类每一行最小的列就是归属类 list(matrix_Dista
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 聚类分析 例子 ppt 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内