欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    K—means聚类的R函数和应用.docx

    • 资源ID:755240       资源大小:132.24KB        全文页数:9页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    K—means聚类的R函数和应用.docx

    学生实验报告课程名称数据挖掘实验名称K一means聚类的R函数和应用实验目的在r中实现K-Means聚类、PAM聚类和层次聚类,并对他们进行比较分析,得出最优聚类。二、实验环境R软件的集成平台Rstudio.三、实验原理1. K-Means聚类(1)原理:KMeans聚类将所收集到的具有P个数值型变量(即聚类变量)的样本数据看成P维空间上的点,并以此定义某种距离。(2)在r中的实现:kmeans(x二数据矩阵,centers二聚类数目或初始类质心,iter,max=10,nstart=l)2. PAM聚类(1)原理:PAM是Partitioningaroundmedoids的英文缩写,也是一种基于质心的划分型聚类算法。PAM聚类与K-Means聚类的主要不同在于:第一,距离测度采用绝对距离。聚类目标是找到类内绝对距离之和最小的类。第二,增加了判断本次迭代类质心合理性的步骤。(2)在I中的实现:Panl(X=矩阵或数据框,k=聚类数目K,medoids二初始类质心向量,do.SWaP=TRUE/FALSE,Stand=TRUE/FALSE)3. 层次聚类(1)原理:层次聚类是将各个观测逐步合并成小类,再将小类逐步合并成中类乃至大类的过程。这类算法将空间中距离较近的多个观测点视为一个类,并基于联通性完成最终的聚类。得到的聚类结果一般为确定性的且具有层次关系。(2)在r中的实现:hclust(d二距离矩阵,method二聚类方法)四、实验内容及步骤(一)实验内容某年我国31个省级行政区(不包括港澳台)环境污染状况的经标准化处理的统计数据,包括生活污水排放量(xl)、生活二氧化硫排放量(x2)、生活烟尘排放量(x3)、工业固体废物排放量(x4)、工业废气排放总量(x5)、工业废水排放量(x6)0此外,还包括GDP水平(gdp)以及地理位置(ge。)。(二)实验步骤1.K-MeanS聚类、PAM聚类的实验步骤:指定聚类数目K;分别确定K个初始类质心;根据最近原则进行聚类;重新确定K个类质心;判断是否已经满足终止聚类算法的条件,如果没有满足则返回第三步。2.层次聚类的实验步骤:首先将每个观测点自成一类;计算所有观测点彼此间的距离,并将其中距离最近的观测点聚成一个小类,形成。一1个类;再次度量剩余观测点和小类间的距离,并将当前距离最近的观测点或小类聚成一类;重复上述过程,不断将所有观测点和小类聚集成越来越大的类,直至所有观测点聚到一起,形成一个最大的类为止。五、数据处理及实验结论(1) K-Means聚类代码如下:setwd(,C:UsersUserDesktop,z)POData=read,table(环境污染数据.txt”,header二T)CluData=PoDataE,2:7#提取聚类变量xlx6set.seed(12345)C1uR=kmeans(x-CIuData,centers-4,nstart=30)ClUR$size#浏览各类包含的样本量CluRJcenters#浏览4类的类质心par(mfrow=c(2,1)> ClUR$size#浏览各类包含的样本量1 4 19 2 6> CluR Scenters #浏览4类的类质心1234Xl 53.39250 15.06895 11.48000 26.91000x2x38.33500 7.9700015.09263 20.4326379.47000 69.4300039.77167 63.68333×4 1.42250 5.31000 59.88000 10.42833x5 ×6 36.78750 83.69250 13.37316 16.45105 33.07000 9.62000 56.67667 40.70000POData$ClUR=ClUR$CIUSter#将聚类解保存到PoData数据框的CluR域中plot(PoDataSCluR,pch=PoDataSCluR,ylab=类别编号“,xlab="省区Pinain二聚类的成员,axes*)#绘制个省区聚类解的序列图,不带坐标轴Par(IaS=2)#指定坐标轴文字转90度axis(l,at=l:31,labels=POData$PrOVinCe,cex.axis=0.6)#指定横坐标刻度文字为指定名axis(2,at=l:4,labels=1:4,cex.axis=O.6)#指定列坐标刻度文字为聚类解编号box()IegendCtoprighr,cC第一类,第二类,第三类,第四类),PCh=I:4,cex=O.6)plot(CluRJcentersEl,type=T,ylim=c(0,82),xlab=聚类变量,ylab二组均值(类质心),main=各类聚类变量均值的变化折线图,axes*)#绘制第1个类的类质心变量取值折线图axis(l,at=l:6,labels=c(生活污水排放量,生活二氧化硫排放量,生活烟尘排放量,工业固体废物排放量,工业废气排放总量,工业废水排放量"),cex.axis-0.6)box()IineS(1:6,CIUR$CenterS2,Ity=2,CoI=2)#绘制第2个类的类质心变量取值折线图lines(l:6,CluRScenters3,lty=3,col=3)lines(l:6,CluRJcenters4,lty=4,col=4)legend(topright,c(第一类,第一类,第二类,第四类),Ity=I:4,col=l:4,cex=O.6)聚类的成员 省区各类聚类变量均值的变化折线图图1各类成员及聚类变量均值变量折线图实验说明:本例中,将数据聚为4类,各类样本量依次为4,19,2,6。第1类的质心向为(53.39250,8.33500,7.97000,1.42250,36.78750,83.69250)。本例中,利用PIot函数和IineS函数绘制了4类的成员情况,以及6个聚类变量的均值在4类上的变化折线图,如图1所示,直观展现了4类的结构特征。例如,第二类地区的各类污染物排放均不高:第三类地区的主要污染物是二氧化硫和烟尘,污水排放量较低;等等。其次,评价类间差异性和类内相似性。实验结论:CluR$betweenss/CluR$totss*100>CluR$betweenss/CluR$totss*100164.92061如上述所示,因类间解释的离差平方和占总平方和的64.92乐总体聚类效果一般。(2) PAM聚类代码如下:set.seed(12345)x=matrix(rnorm(n=100,mean=0,sd=l),ncol=2,byrow=T)x1:25,1=x1:25,1+3#令样本数据包含2个自然小类X1:25,2=X1:25,2-4library(zzClusterzz)set.seed(12345)(PClu=pam(x=x,k=2,do.swap=T,stand=F)#PAM聚成2类Medoids:ID1,183,2542712-3.50881172,450.53652370.8248701Clusteringvector:11111111111111111111111111222212222236222222222222222Objectivefunction:buildswap1.7214041.382137Available components:1 "medoids""id.med"6 "clusinfo""si 1 info""clustering" "objective" "isolation""diss""call""data"plot(x=PClu,data=x)#可视化聚类结果clusplot(pam(× = x, k = 2, stand F, do.swap T)Sllhouene plot of pam(x =需 k = 2, stand F, do.swap T1 26 0612 24 0 SitXMjette width SiAveraoe Sihouette width 062Component 1These two comoonets exolain 100%ofthe Dot nt VanabIftV图2PAM聚类的可视化结果实验说明,将样本数据聚成2个小类,最终两个小类质心为第18和第45号观测,两变量分别取值为(3.25,-3.51),(0.54,0.82)。2个小类分别包含26个和24个观测,可视化聚类结果如图2所示。图2(左)是对原始数据利用主成分分析法提取2个主成分的观测点分布图。两个类别的轮廓大致为椭圆形,两类边界接壤但没有相互交叉,聚类效果较为理想。图2(右)为各个观测的轮宽以及各类的平均轮宽。轮宽值较小的观测是位于两类边界附近的观测。实验结论:本例的PAM聚类结果与K-Means聚类相同。(3)层次聚类代码如下:DisMatrix=Clist(CluData,method="euclidean")#计算关于欧式距离的距离矩阵CluR=hclust(d=DisMatrix,method="ward")#采用Ward策略聚类plot(CluR,Iabels=PoDataE,1)#绘制聚类树形图box()plot(CluRSheight,30:1,type=zzbzz,cex=0.7,xlab=距离测度“,ylab="聚类数目)OisMatnxKclust(*,w三rdO,)图3DisMatrixhclust(*,tfward")图4层次聚类的碎石图实验说明:本例采用ward策略聚类。不同的聚类方法所得的聚类结果存在一定差异所示。聚类结果的最好展示方式是图形,利用plot函数可以绘制聚类的树形图,如图3所示。实验结论:如图4所示,随着聚类数目K的不断减少,最小的类间距离不断增大。当聚类数目达到4类之后,最小的类间距离的变化幅度很大,说明类间的差异性较大,不应再继续合并。所以,根据碎石图粗略判断聚成4类较为合适。PoDataSmemb=CUtree(CluR,k=4)#将层次聚类的树形图拆成4组table(PoDataJmemb)#浏览各类的成员个数>table(PoData$memb)#浏览各类的成员个数123477134plot(PoDataSmemb,Pch=PoDataSmemb,ylab=类别编号,XIab=省区”,main=聚类的类成员,axes=F)par(las=2)axis(l,at=l:31,labels=PoDataSprovince,cex.axis-0.6)axis(2,at=l:4,labels=1:4,cex.axis=0.6)boxO聚类的类成员4-5×>5<J-+2-OO。OOOO省区图5层次聚类的类解图实验说明:图5的聚类结果与K-Means聚类有所

    注意事项

    本文(K—means聚类的R函数和应用.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开