目錄
簡述6種系統聚類法
實驗實例和數據資料:
上機實驗步驟:
進行最短距離聚類:
進行最長距離聚類:
進行中間距離聚類:
進行類平均法聚類:
進行重心法聚類:
進行ward.D聚類:
進行ward.D2聚類:
簡述6種系統聚類法
(一)單鏈接聚類法:也稱為最小距離聚類法,它通過計算兩個簇中最近的成員之間的距離來確定簇之間的距離。該方法通常會產生長而細的簇,對異常值敏感。
(二)完全鏈接聚類法:也稱為最大距離聚類法,它通過計算兩個簇中最遠的成員之間的距離來確定簇之間的距離。該方法通常會產生緊湊的簇,對異常值不敏感。
(三)平均鏈接聚類法:它通過計算兩個簇中所有成員之間的平均距離來確定簇之間的距離。該方法可以在一定程度上平衡單鏈接和完全鏈接的缺點。
(四)中心鏈接聚類法:它通過計算兩個簇的質心之間的距離來確定簇之間的距離。質心是指簇中所有成員的平均值。該方法產生的簇具有更加均衡的大小。
(五)Ward聚類法:它基于最小方差準則,通過計算將兩個簇合并后整體的方差增加量來確定簇之間的距離。該方法傾向于產生方差相對較小的簇。
(六)類平均聚類法:它通過計算兩個簇中所有成員之間的平均距離來確定簇之間的距離。類平均聚類法與平均鏈接聚類法類似,但不同于平均鏈接聚類法使用所有成員之間的距離,而是只使用兩個簇之間的成員之間的距離。
實驗實例和數據資料:
P212:2)?為了比較我國?31個省、市、自治區?1996年和2007年(數據見本章例7.2:d3.1)城鎮居民生活消費的分布規律,根據調查資料作區域消費類型劃分。并將1996年和2007年的數據進行對比分析。今收集了八個反映城鎮居民生活消費結構的指標(1996年數據見表1和表2):
表1?八個反映城鎮居民生活消費結構的指標
符號 | 指標 | 單位 |
X1 X2 X3 X4 X5 X6 X7 X8 | 人均食品支出 人均衣著商品支出 人均家庭設備用品及服務支出 人均醫療保健支出 人均交通和通信支出 人均娛樂教育文化服務支出 人均居住支出 人均雜項商品和服務支出 | 元/人 元/人 元/人 元/人 元/人 元/人 元/人 元/人 |
表2?1996年全國31個省、市、自治區城鎮居民消費數據
X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | |
北京 | 8170.22 | 2794.87 | 1974.25 | 1717.58 | 4106.04 | 3984.86 | 2125.99 | 1401.08 |
天津 | 7943.06 | 1950.68 | 1205.62 | 1694.29 | 3468.86 | 2353.43 | 2088.62 | 1007.31 |
河北 | 4404.4 | 1488.11 | 977.46 | 1117.3 | 2149.57 | 1550.63 | 1526.28 | 426.29 |
山西 | 3676.65 | 1627.53 | 870.91 | 1020.61 | 1775.3 | 2065.44 | 1612.36 | 516.84 |
內蒙古 | 6117.93 | 2777.25 | 1233.39 | 1394.8 | 2719.92 | 2111 | 1951.05? | 943.72 |
遼寧 | 5803.9 | 2100.71 | 1145.57 | 1343.05 | 2589.18 | 2258.46 | 1936.10? | 852.69 |
吉林 | 4658.13 | 1961.2 | 908.43 | 1692.11 | 2217.87 | 1935.04? | 1932.24 | 627.3 |
黑龍江 | 5069.89 | 1803.45 | 796.38 | 1334.8 | 1661.35 | 1396.38 | 1543.29? | 556.16 |
上海 | 9822.88 | 2032.28 | 1705.47 | 1350.28 | 4736.36 | 4122.07 | 2847.88 | 1537.78 |
江蘇 | 7074.11 | 2013 | 1378.85 | 1122 | 3135 | 3290 | 1564.3 | 794.00? |
浙江 | 8008.16 | 2235.21 | 1400.57 | 1244.37 | 4568.32 | 2848.75 | 2004.69 | 947.13 |
安徽 | 6370.23 | 1687.49 | 898.55 | 869.89 | 2411.16 | 1904.15 | 1633.55 | 480.16 |
福建 | 7424.67 | 1685.07 | 1416.94 | 935.5 | 3219.46 | 2448.36 | 2013.53 | 949.19 |
江西 | 5221.1 | 1566.49 | 1004.15 | 672.5 | 1812.78 | 1671.24 | 1414.89 | 471.58 |
山東 | 5625.94 | 2277.03 | 1269.65 | 1109.37 | 2474.83 | 1909.84 | 1780.07 | 665.52 |
河南 | 4913.87 | 1916.99 | 1281.06 | 1054.54 | 1768.28 | 1911.16 | 1315.28 | 660.81 |
湖北 | 6259.22 | 1881.85 | 1059.22 | 1033.46 | 1745.05 | 1922.83 | 1456.30? | 391.57 |
湖南 | 5583.99 | 1520.35 | 1146.65 | 1078.82 | 2409.83 | 2080.46 | 1529.50? | 537.51 |
廣東 | 8856.91 | 1614.87 | 1539.09 | 1122.71 | 4544.21 | 3222.40? | 2339.12 | 893.95 |
廣西 | 5841.16 | 1015.88 | 1086.46 | 776.26 | 2564.92 | 2093.99 | 1622.50? | 386.46 |
海南 | 6979.22 | 932.63 | 1030.79 | 734.28 | 2005.73 | 1923.48 | 1578.65 | 408.26 |
重慶 | 7245.12 | 2333.81 | 1325.91 | 1245.33 | 1976.19 | 1722.66 | 1376.15 | 588.70? |
四川 | 6471.84 | 1727.92 | 1196.65 | 1019.04 | 2185.94 | 1877.55 | 1321.54 | 542.99 |
貴州 | 4915.02 | 1401.85 | 1083.77 | 633.72 | 1870.08 | 1950.28 | 1496.49 | 351.66 |
云南 | 5741.01 | 1356.91 | 987.24 | 1085.46 | 2197.73 | 2045.29 | 1384.91 | 357.61 |
西藏 | 5889.48 | 1528.14 | 541.46 | 617.97 | 500.6 | 1551.34 | 963.99 | 638.89 |
陜西 | 6075.58 | 1915.33 | 1060.49 | 1310.19 | 2019.08 | 2208.06 | 1465.81 | 626.16 |
甘肅 | 5162.87 | 1747.32 | 939.48 | 1117.42 | 1503.61 | 1547.65 | 1596 | 406.37 |
青海 | 4777.1 | 1675.06 | 890.08 | 813.13 | 1742.96 | 1471.98 | 1684.78 | 484.41 |
寧夏 | 4895.2 | 1737.21 | 1001.82 | 1158.83 | 2503.65 | 1868.42 | 1497.98 | 657.99 |
新疆 | 5323.5 | 2036.94 | 977.8 | 1179.77 | 2210.25 | 1597.99 | 1275.35 | 604.55 |
試對該數據進行聚類分析。???????
上機實驗步驟:
1.準備數據:根據提供的消費數據,將數據保存在一個Excel文件中,并確保每個地區在所有指標上都有完整的數據。將文件命名為"1996年數據.xlsx"。
2.?加載數據并計算距離矩陣
data=read.xlsx('1996年數據.xlsx',rowNames=T);data??
dist_matrix?<-?dist(data)??
結果如下
進行最短距離聚類:
j1?<-?hclust(dist_matrix,?method?=?"single")??
plot(j1,?main?=?"最短距離聚類樹狀圖")??
結果如下
進行最長距離聚類:
j2?<-?hclust(dist_matrix,?method?=?"complete")??
plot(j2,?main?=?"最長距離聚類樹狀圖")??
結果如下
進行中間距離聚類:
j3?<-?hclust(dist_matrix,?method?=?"median")??
plot(j3,?main?=?"中間距離聚類樹狀圖")??
結果如下
進行類平均法聚類:
j4?<-?hclust(dist_matrix,?method?=?"average")??
plot(j4,?main?=?"類平均法聚類樹狀圖")??
結果如下
進行重心法聚類:
j5?<-?hclust(dist_matrix,?method?=?"centroid")??
plot(j5,?main?=?"重心法聚類樹狀圖")
結果如下
進行ward.D聚類:
j6?<-?hclust(dist_matrix,?method?=?"ward.D")??
plot(j6,?main?=?"ward.D聚類樹狀圖")??
結果如下
進行ward.D2聚類:
j7?<-?hclust(dist_matrix,?method?=?"ward.D2")??
plot(j7,?main?=?"ward.D2聚類樹狀圖")?
結果如下