K-means聚類的R函數(shù)和應用_第1頁
K-means聚類的R函數(shù)和應用_第2頁
K-means聚類的R函數(shù)和應用_第3頁
K-means聚類的R函數(shù)和應用_第4頁
K-means聚類的R函數(shù)和應用_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

學生實驗報告課程名稱《數(shù)據挖掘》實驗名稱K—means聚類的R函數(shù)和應用實驗目的在r中實現(xiàn)K—Means聚類、PAM聚類和層次聚類,并對他們進行比較分析,得出最優(yōu)聚類。實驗環(huán)境R軟件的集成平臺Rstudio.實驗原理1.K—Means聚類(1)原理:K—Means聚類將所收集到的具有p個數(shù)值型變量(即聚類變量)的樣本數(shù)據看成p維空間上的點,并以此定義某種距離。(2)在r中的實現(xiàn):kmeans(x=數(shù)據矩陣,centers=聚類數(shù)目或初始類質心,iter.max=10,nstart=1)2.PAM聚類(1)原理:PAM是partitioningaroundmedoids的英文縮寫,也是一種基于質心的劃分型聚類算法。PAM聚類與K-Means聚類的主要不同在于:第一,距離測度采用絕對距離。聚類目標是找到類內絕對距離之和最小的類。第二,增加了判斷本次迭代類質心合理性的步驟。(2)在r中的實現(xiàn):pam(x=矩陣或數(shù)據框,k=聚類數(shù)目K,medoids=初始類質心向量,do.swap=TRUE/FALSE,stand=TRUE/FALSE)3.層次聚類(1)原理:層次聚類是將各個觀測逐步合并成小類,再將小類逐步合并成中類乃至大類的過程。這類算法將空間中距離較近的多個觀測點視為一個類,并基于聯(lián)通性完成最終的聚類。得到的聚類結果一般為確定性的且具有層次關系。(2)在r中的實現(xiàn):hclust(d=距離矩陣,method=聚類方法)實驗內容及步驟實驗內容某年我國31個省級行政區(qū)(不包括港澳臺)環(huán)境污染狀況的經標準化處理的統(tǒng)計數(shù)據,包括生活污水排放量(x1)、生活二氧化硫排放量(x2)、生活煙塵排放量(x3)、工業(yè)固體廢物排放量(x4)、工業(yè)廢氣排放總量(x5)、工業(yè)廢水排放量(x6)。此外,還包括GDP水平(gdp)以及地理位置(geo)。實驗步驟1.K-Means聚類、PAM聚類的實驗步驟:①指定聚類數(shù)目K;②分別確定K個初始類質心;③根據最近原則進行聚類;④重新確定K個類質心;⑤判斷是否已經滿足終止聚類算法的條件,如果沒有滿足則返回第三步。2.層次聚類的實驗步驟:①首先將每個觀測點自成一類;

②計算所有觀測點彼此間的距離,并將其中距離最近的觀測點聚成一個小類,形成n一1個類;

③再次度量剩余觀測點和小類間的距離,并將當前距離最近的觀測點或小類聚成一類;

④重復上述過程,不斷將所有觀測點和小類聚集成越來越大的類,直至所有觀測點聚到一起,形成一個最大的類為止。數(shù)據處理及實驗結論K-Means聚類代碼如下:setwd("C:\\Users\\User\\Desktop")PoData=read.table("環(huán)境污染數(shù)據.txt",header=T)CluData=PoData[,2:7]#提取聚類變量x1~x6set.seed(12345)CluR=kmeans(x=CluData,centers=4,nstart=30)CluR$size#瀏覽各類包含的樣本量CluR$centers#瀏覽4類的類質心par(mfrow=c(2,1))PoData$CluR=CluR$cluster#將聚類解保存到PoData數(shù)據框的CluR域中plot(PoData$CluR,pch=PoData$CluR,ylab="類別編號",xlab="省區(qū)",main="聚類的成員",axes=F)#繪制個省區(qū)聚類解的序列圖,不帶坐標軸par(las=2)#指定坐標軸文字轉90度axis(1,at=1:31,labels=PoData$province,cex.axis=0.6)#指定橫坐標刻度文字為指定名axis(2,at=1:4,labels=1:4,cex.axis=0.6)#指定列坐標刻度文字為聚類解編號box()legend("topright",c("第一類","第二類","第三類","第四類"),pch=1:4,cex=0.6)plot(CluR$centers[1,],type="l",ylim=c(0,82),xlab="聚類變量",ylab="組均值(類質心)",main="各類聚類變量均值的變化折線圖",axes=F)#繪制第1個類的類質心變量取值折線圖axis(1,at=1:6,labels=c("生活污水排放量","生活二氧化硫排放量","生活煙塵排放量","工業(yè)固體廢物排放量","工業(yè)廢氣排放總量","工業(yè)廢水排放量"),cex.axis=0.6)box()lines(1:6,CluR$centers[2,],lty=2,col=2)#繪制第2個類的類質心變量取值折線圖lines(1:6,CluR$centers[3,],lty=3,col=3)lines(1:6,CluR$centers[4,],lty=4,col=4)legend("topright",c("第一類","第二類","第三類","第四類"),lty=1:4,col=1:4,cex=0.6)圖1各類成員及聚類變量均值變量折線圖實驗說明:本例中,將數(shù)據聚為4類,各類樣本量依次為4,19,2,6。第1類的質心向為(53.39250,8.33500,7.97000,1.42250,36.78750,83.69250)。本例中,利用plot函數(shù)和lines函數(shù)繪制了4類的成員情況,以及6個聚類變量的均值在4類上的變化折線圖,如圖1所示,直觀展現(xiàn)了4類的結構特征。例如,第二類地區(qū)的各類污染物排放均不高:第三類地區(qū)的主要污染物是二氧化硫和煙塵,污水排放量較低;等等。

其次,評價類間差異性和類內相似性。實驗結論:CluR$betweenss/CluR$totss*100如上述所示,因類間解釋的離差平方和占總平方和的64.92%,總體聚類效果一般。(2)PAM聚類代碼如下:set.seed(12345)x=matrix(rnorm(n=100,mean=0,sd=1),ncol=2,byrow=T)x[1:25,1]=x[1:25,1]+3#令樣本數(shù)據包含2個自然小類x[1:25,2]=x[1:25,2]-4library("cluster")set.seed(12345)(PClu=pam(x=x,k=2,do.swap=T,stand=F))#PAM聚成2類plot(x=PClu,data=x)#可視化聚類結果圖2PAM聚類的可視化結果實驗說明:將樣本數(shù)據聚成2個小類,最終兩個小類質心為第18和第45號觀測,兩變量分別取值為(3.25,-3.51),(0.54,0.82)。2個小類分別包含26個和24個觀測,可視化聚類結果如圖2所示。圖2(左)是對原始數(shù)據利用主成分分析法提取2個主成分的觀測點分布圖。兩個類別的輪廓大致為橢圓形,兩類邊界接壤但沒有相互交叉,聚類效果較為理想。圖2(右)為各個觀測的輪寬以及各類的平均輪寬。輪寬值較小的觀測是位于兩類邊界附近的觀測。實驗結論:

本例的PAM聚類結果與K-Means聚類相同。(3)層次聚類代碼如下:DisMatrix=dist(CluData,method="euclidean")#計算關于歐式距離的距離矩陣CluR=hclust(d=DisMatrix,method="ward")#采用ward策略聚類plot(CluR,labels=PoData[,1])#繪制聚類樹形圖box()plot(CluR$height,30:1,type="b",cex=0.7,xlab="距離測度",ylab="聚類數(shù)目")圖3DisMatrixhclust(*,”ward”)圖4層次聚類的碎石圖實驗說明:本例采用ward策略聚類。不同的聚類方法所得的聚類結果存在一定差異

所示。聚類結果的最好展示方式是圖形,利用plot函數(shù)可以繪制聚類的樹形圖,如圖3所示。實驗結論:如圖4所示,隨著聚類數(shù)目K的不斷減少,最小的類間距離不斷增大。當聚類數(shù)目達到4類之后,最小的類間距離的變化幅度很大,說明類間的差異性較大,不應再繼續(xù)合并。所以,根據碎石圖粗略判斷聚成4類較為合適。PoData$memb=cutree(CluR,k=4)#將層次聚類的樹形圖拆成4組table(PoData$memb)#瀏覽各類的成員個數(shù)plot(PoData$memb,pch=PoData$memb,ylab="類別編號",xlab="省區(qū)",main="聚類的類成員",axes=F)pa

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論