日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

SAS多元分析之聚類(1)–proc cluster | Statistics with SAS

 wenasunny 2016-12-28

本文主要對(duì)SAS做聚類分析的proc cluster步的應(yīng)用做一個(gè)簡(jiǎn)單的摘錄,相關(guān)的理論知識(shí)細(xì)節(jié),請(qǐng)參見SAS help文檔及其他統(tǒng)計(jì)學(xué)相關(guān)文獻(xiàn)等。

1.簡(jiǎn)介

proc cluster一般適用于規(guī)模較小的樣本觀測(cè)聚類(即Q型聚類)。proc cluster為系統(tǒng)聚類,包括11種方法,根據(jù)“距離”作為分類標(biāo)準(zhǔn)。

2.proc cluster

常用語法格式:

PROC CLUSTER METHOD = name < options > ;
COPY variables ;
ID variable ;
VAR variables ;

Method=average|ward|centroid|single|complete|median|flexible|mcquitty|eml|density|twostage,分別指定11類系統(tǒng)聚類法。

proc cluster常用選項(xiàng)及語句說明:

data= 指定聚類過程的輸入數(shù)據(jù)集。該數(shù)據(jù)集可以是觀測(cè)樣本(坐標(biāo)數(shù)據(jù)),也可以是類型“type=distance”的數(shù)據(jù)集,數(shù)據(jù)被認(rèn)為是類間(或觀測(cè)間)的距離陣。

關(guān)于type=distance的數(shù)據(jù)集,用如下方式就可建立:
data dis_data(type=distance);
input a b c;
……
用proc contents等方法可以查看到其“Data Set Type DISTANCE”

outtree= 生產(chǎn)一個(gè)數(shù)據(jù)集,存儲(chǔ)cluster過程的聚類歷史,可被proc tree調(diào)用作圖。

proc tree主要用于根據(jù)proc cluster產(chǎn)生的結(jié)果作樹狀圖dendrograms。常用語句如:proc tree data= out= nclusters= horizontal; 等。其中data=指定輸入數(shù)據(jù)集,out=輸出數(shù)據(jù)集,nclusters=指定輸出數(shù)據(jù)集中的分類數(shù),horizontal要求畫水平聚類圖。

standard|std 把聚類變量的坐標(biāo)數(shù)據(jù)標(biāo)準(zhǔn)化均值為0、標(biāo)準(zhǔn)差為1,然后進(jìn)行聚類分析。該選項(xiàng)僅用于坐標(biāo)數(shù)據(jù)集。

聚類分析中,樣本間的聚類通常是采用歐氏距離,為消除變量不同量綱對(duì)聚類分析的影響,通常進(jìn)行標(biāo)準(zhǔn)化的處理。

rsquare|rsq 輸出R^2和半偏R^2統(tǒng)計(jì)量,該選項(xiàng)對(duì)average、centriod法的坐標(biāo)數(shù)據(jù)有效,對(duì)于ward法總是輸出。

這兩個(gè)統(tǒng)計(jì)量是用來幫助確定分類個(gè)數(shù)的。R^2越大表示各個(gè)類區(qū)分的越開,聚類效果越好。而又不能以 的大小簡(jiǎn)單的確定分類個(gè)數(shù),應(yīng)考察 值的變化,即半偏 ,即上一步 與該步 之差。若某步半偏 較大,說明本次并類效果不好,應(yīng)當(dāng)考慮聚類到上一步是否應(yīng)停止。

pseudo 輸出偽F和偽T統(tǒng)計(jì)量,該選項(xiàng)僅對(duì)average、centriod、ward法的坐標(biāo)數(shù)據(jù)有效。

這兩個(gè)統(tǒng)計(jì)量同樣是用來幫助確定分類個(gè)數(shù)的。類似R^2和半偏R^2,偽F統(tǒng)計(jì)量值越大分來效果越好;若某步偽T統(tǒng)計(jì)量值較大,說明該步并類效果不好,應(yīng)當(dāng)考慮聚類到上一步是否應(yīng)停止。

print|p=k 指定cluster history顯示的分類數(shù),即只列出最后合并為k類直到合并為1類得信息。

copy語句 把“data=”數(shù)據(jù)集中,id和var語句未列出變量,復(fù)制到“outtree=”指定的數(shù)據(jù)集中。

id語句 標(biāo)識(shí)過程中的觀測(cè),缺省是用觀測(cè)序號(hào)標(biāo)識(shí)。

var語句 列出聚類分析中用到的語句。

3.實(shí)例

摘用《統(tǒng)計(jì)分析與SAS》(張曉冉 編著)的例11.1.1問題:根據(jù)2004年我國31個(gè)省市農(nóng)民人均年生活消費(fèi)支出情況,進(jìn)行分類。數(shù)據(jù)參見下數(shù)據(jù)集(數(shù)據(jù)單位:元)。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
data consume2004;
	input area$ x1-x8;
	label area="地區(qū)" x1='食品' x2='衣著' x3='居住' x4='家庭設(shè)備及服務(wù)' x5='醫(yī)療保健' x6='交通和通訊' x7='文教娛樂' x8='其他商品及服務(wù)';
datalines;;
北京 1495.09 308.85 746.04 227.27 507.55 512.23 743.72 76.18
天津 1017.72 181.21 508.06 108.51 177.10 230.41 376.87 42.23
河北 780.09 127.06 340.88 80.42 115.97 176.60 182.56 31.33
山西 748.90 171.69 179.22 59.27 84.20 130.00 235.01 28.17
內(nèi)蒙古 889.05 133.54 266.43 69.91 154.51 241.90 291.98 35.25
遼寧 962.00 154.97 290.08 72.58 145.19 186.77 217.95 43.42
吉林 899.00 133.54 216.82 62.08 161.16 214.97 237.34 46.31
黑龍江 750.57 123.87 388.87 49.87 131.04 175.85 188.51 28.78
上海 2191.15 279.73 1446.15 344.41 424.55 720.37 805.56 116.94
江蘇 1317.88 163.53 467.62 141.43 163.16 293.07 373.39 72.47
浙江 1838.57 258.58 798.88 242.09 326.12 496.86 597.96 100.05
安徽 861.34 86.87 299.82 75.97 91.95 163.93 199.95 33.88
福建 1408.54 159.60 430.14 154.44 136.40 306.06 313.09 107.32
江西 1125.13 107.19 234.69 66.89 110.32 171.89 237.28 42.10
山東 1000.13 139.18 365.97 110.12 155.85 221.93 298.23 97.85
河南 808.27 108.08 268.72 63.68 95.22 121.17 168.04 30.91
湖北 1076.35 93.52 274.10 75.11 110.73 162.65 245.68 50.85
湖南 1338.65 112.38 293.23 92.37 124.12 174.53 279.96 57.05
廣東 1581.68 116.83 494.89 131.17 153.17 350.27 314.34 98.44
廣西 1047.58 64.42 311.48 64.87 83.64 140.13 178.83 37.65
海南 1027.90 58.96 134.00 83.16 86.57 133.77 164.42 56.59
重慶 1039.00 79.08 201.03 74.81 115.31 119.68 198.65 26.38
四川 1123.18 92.87 234.31 79.15 117.40 127.60 209.68 31.54
貴州 754.39 55.63 165.95 41.48 47.19 70.41 140.21 21.07
云南 848.30 61.87 239.29 61.78 87.66 105.52 143.20 23.42
西藏 941.08 157.87 118.55 75.55 28.93 89.16 37.84 21.72
陜西 686.38 91.78 237.32 65.46 118.12 126.13 258.83 34.04
甘肅 703.41 82.33 179.86 58.91 85.33 130.22 202.64 21.64
青海 813.35 121.83 233.16 65.48 126.60 176.41 108.14 31.48
寧夏 808.54 122.50 325.21 65.30 186.90 155.26 217.06 46.05
新疆 763.43 138.88 304.81 56.03 141.97 131.59 126.92 26.28
;
run;

用proc cluster做聚類分析,采用Ward法,如下:

1
2
3
4
5
6
ods graphics on;
proc cluster data=consume2004 method=ward std rsquare pseudo outtree=ave_tree;
	var x1-x8;
	id area;
run;
ods graphics off;

得到聚類歷史如下圖(其中省略了一些中間的歷史記錄):

首先對(duì)Cluster History進(jìn)行下簡(jiǎn)單的說明:

Cluster History中的變量依次表示分類的類數(shù)、原分類、每步合并入的類、此步類中的觀測(cè)數(shù)、半偏R平方、R平方、偽F統(tǒng)計(jì)量,偽T統(tǒng)計(jì)量。

如前介紹,系統(tǒng)聚類法首先將所有樣本觀測(cè)各獨(dú)自視為1類,然后逐步合并至只有1類。本例中,用ward法,樣本觀測(cè)就是31個(gè)省市:初始時(shí)有31類;第1步將重慶、四川合為1類,其他29個(gè)省市仍各自為1類,記30類;第2步將江西、湖北合為1類,記29類;依次類推。注意,上圖NCL=8時(shí),即記8類時(shí),是將之前記的13類和西藏合并得到的。

接下來,下圖描述了偽F統(tǒng)計(jì)量,偽T統(tǒng)計(jì)量的情況,為我們判斷確定分類組數(shù)提供了初步參考。如可以看出:在類數(shù)為5—15的區(qū)間內(nèi),偽F統(tǒng)計(jì)量都相對(duì)小些;在類數(shù)為1、4、5等處,偽T統(tǒng)計(jì)量相對(duì)較大。

下面,為確定分類數(shù),對(duì)Cluster History進(jìn)行詳細(xì)分析。
我們?nèi)藶榧俣ǚ诸悢?shù)不應(yīng)超過8,則對(duì)Cluster History的最后8次合并分析即可,根據(jù)半偏R平方、偽F統(tǒng)計(jì)量,偽T統(tǒng)計(jì)量,得到的前4中最好分類為:

  • 半偏R平方:2,3,4,5,6
  • 偽F統(tǒng)計(jì)量:2,3,4,5,6
  • 偽T統(tǒng)計(jì)量:2,3,5,6,8

解釋一下:

  • 對(duì)半偏R^2,前面介紹到“若某步半偏R^2較大,說明該步并類效果不好,應(yīng)當(dāng)考慮聚類到上一步是否應(yīng)停止”。在最后8次并類中,半偏R^2最大為0.6754,在NCL=1時(shí)得到,考慮在上一步停止分類,即分類數(shù)為2;半偏R^2第二大為0.1317,在NCL=2時(shí)得到,考慮在上一步停止分類,即分類數(shù)為3;依次類推,得到最好分類數(shù)依次為:2,3,4,5,6。
  • 偽F統(tǒng)計(jì)量,其統(tǒng)計(jì)量值越大分來效果越好,很容易排序得到最好分類數(shù)依次為:2,3,4,5,6。
  • 偽T統(tǒng)計(jì)量,類似于半偏R^2,若某步較大,說明該步并類效果不好,應(yīng)當(dāng)考慮聚類到上一步是否應(yīng)停止。得到最好分類數(shù)依次為:2,3,5,6,8。

另外,若我們?cè)偌俣ǚ诸悢?shù)應(yīng)大于3,則分類數(shù)大致可以為4,5,6。至于如何最終確定分類數(shù),可以參考其他聚類方法結(jié)果、畫出樹狀圖等,綜合考慮,個(gè)人作出判斷,這里選定分類數(shù)為5。

接下來,可以用proc tree和proc means進(jìn)一步完善后續(xù)工作。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
proc tree data=ave_tree out=result ncl=5 horizontal;
	copy x1-x8;
run;
proc sort data=result;
	by cluster;
run;
proc means data=result noprint;
	var x1-x8;
	by cluster;
	output out=clus_mean mean=x1 x2 x3 x4 x5 x6 x7 x8;
data clus_mean;
	set clus_mean;
	sum=sum(x1,x2,x3,x4,x5,x6,x7,x8);
	label sum='總和';
	format x1-x8 sum 8.2;
run;

最后,根據(jù)數(shù)據(jù)集result可以得到將31個(gè)省市分為5類,分別是:

  • 第一類:重慶 四川 江西 湖北 安徽 河南 貴州 云南 陜西 甘肅 廣西 湖南 海南 西藏
  • 第二類:河北 黑龍江 內(nèi)蒙古 吉林 青海 新疆 遼寧 寧夏 山西 天津
  • 第三輪:福建 廣東 江蘇 山東
  • 第四類:北京 浙江
  • 第五類:上海

樹狀圖如下:

匯總數(shù)據(jù)集如下,即得到各個(gè)類各消費(fèi)情況的平均水平及總和:

 

參考文獻(xiàn)
1.SAS STAT 9.2 User’s Guide (2d Edition)
2.統(tǒng)計(jì)分析與SAS(張曉冉 編著)

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多