應用統計學與R語言實現學習筆記(十二)——主成分分析

Chapter 12 Priciple Component Analysis

本篇是第十二章,內容是主成分分析。
這篇博客的完整內容包含各類數學表達。可以見我CSDN和hexo搭的個人博客。
CSDN博客

hexo的個人博客

1 主成分分析基本思想

依舊從問題開始本篇的介紹。地理學和生態學研究里經常遇到的問題就是,影響變量非常之多,而且地球表層地理生態環境現象無法使用控制變量的方式進行實驗。同時影響變量非常多,經常出現變量冗余、冗雜的現象,同時多元分布數據本身對人類的認知就是一種挑戰。這里舉個栗子:比如在研究城市經濟發展的時候,我們會考慮到的因素會包括第一產業、第二產業、第三產業占比,城市人口,城市地理位置,城市氣候適宜度,政策扶持等等很多因子,但是這里有很多因子存在共線性的情況,也就是變量冗余冗雜。用矛盾論的話說,要抓住主要矛盾,那么如何在多元分布數據中分離出主要的因子,這就是本篇的主角主成分分析(Priciple Component Analysis,PCA)。

所以它的基本思想是。

在社會經濟的研究中,為了全面系統的分析和研究問題,必須考慮許多經濟指標,這些指標能從不同的側面反映我們所研究的對象的特征,但在某種程度上存在信息的重疊,具有一定的相關性。這種信息的重疊有時甚至會抹殺事物的真正特征與內在規律。
主成分分析是利用降維的思想, 在力求數據信息丟失最少的原則下,對高維的變量空間降維,即在眾多變量中找出少數幾個綜合指標(原始變量的線性組合),并且這幾個綜合指標將盡可能多地保留原來指標變異方面的信息,且這些綜合指標互不相關。這些綜合指標就稱為主成分。主成分的數目少于原始變量的數目。
在一個低維空間識辨系統要比在一個高維空間容易得多。因此,更容易抓住主要矛盾,揭示事物內部變量之間的規律性,使問題得到簡化,提高分析效率。指標間具有相關性是做主成分分析的前提。
主成分分析是一種數學變換方法,它把給定的一組變量通過線性變換轉換為一組不相關的變量。在這種變換中,保持變量的總方差不變,同時,使第一主成分具有最大方差,第二主成分具有次大方差,依此類推。
主成分與原始變量間的關系
(1)每一個主成分是原始變量的線性組合。
(2)主成分的數目少于原始變量的數目。
(3)主成分保留了原始變量的大多數變異信息。
(4)各主成分間互不相關。

2 幾何解釋與數學模型

2.1 幾何解釋

假定只有二維,即只有兩個變量,由橫坐標和縱坐標所代表;每個觀測值都有相應于這兩個坐標軸的坐標值。如果這些數據形成一個橢圓形狀的點陣(這在二維正態的假定下是可能的)該橢圓有一個長軸和一個短軸。在短軸方向上數據變化較少。在極端的情況,短軸如退化成一點,長軸的方向可以完全解釋這些點的變化,由二維到一維的降維就自然完成了。

由圖可以看出這些樣本點無論是沿著xl軸方向或x2軸方向都具有較大的離散性,其離散的程度可以分別用觀測變量x1的方差和x2的方差定量地表示。顯然,如果只考慮x1和x2中的任何一個,那么包含在原始數據中的經濟信息將會有較大的損失。
當坐標軸和橢圓的長短軸平行,那么代表長軸的變量就描述了數據的主要變化,而代表短軸的變量就描述了數據的次要變化。但是,坐標軸通常并不和橢圓的長短軸平行。因此,需要尋找橢圓的長短軸,并進行變換,使得新變量和橢圓的長短軸平行。如果長軸變量代表了數據包含的大部分信息,就用該變量代替原先的兩個變量(舍去次要的一維),降維就完成了。橢圓的長短軸相差得越大,降維也越有道理。

2.2 數學模型

如果我們將xl軸和x2軸先平移,再同時按逆時針方向旋轉θ角度,得到新坐標軸Fl和F2。Fl和F2是兩個新變量。
旋轉變換的目的是為了使得n個樣品點在Fl軸方向上的離散程度最大,即Fl的方差最大。變量Fl代表了原始數據的絕大部分信息,在研究某經濟問題時,即使不考慮變量F2也無損大局。經過上述旋轉變換原始數據的大部分信息集中到Fl軸上,對數據中包含的信息起到了濃縮作用。
Fl, F2除了可以對包含在Xl, X2中的信息起著濃縮作用之外,還具有不相關的性質,這就使得在研究復雜的問題時避免了信息重疊所帶來的虛假性。二維平面上的個點的方差大部分都歸結在Fl軸上,而F2軸上的方差很小。 Fl和F2稱為原始變量,x1和x2的綜合變量。 簡化了系統結構,抓住了主要矛盾。
多維情形
多維變量的情況和二維類似。正如二維橢圓有兩個主軸,三維橢球有三個主軸一樣,有幾個變量,就有幾個主軸。和二維情況類似,高維橢球的主軸也是互相垂直的。首先把高維橢球的主軸找出來,再用代表大多數數據信息的最長的幾個軸作為新變量。這些互相正交的新變量是原先變量的線性組合,叫做主成分(principal component)。
假設我們所討論的實際問題中,有p個指標,我們把這p個指標看作p個隨機變量,主成分分析就是要把這個p指標的問題,轉變為討論p個指標的線性組合的問題,而這些新的指標按照保留主要信息量的原則充分反映原指標的信息,并且相互獨立。
這種由討論多個指標降為少數幾個綜合指標的過程在數學上就叫做降維。主成分分析通常的做法是,尋求原指標的線性組合Fi。
滿足條件
每個主成分的系數平方和為1。
主成分之間相互獨立,即無重疊的信息。
主成分的方差依次遞減,重要性依次遞減,

3 主成分的推導

兩個線性代數的結論
詳見CSDN和hexo博客

4 主成分的性質

1、均值 $E(U'x)=U'\mu$
2、方差為所有特征根之和
3、精度分析
1)貢獻率:第i個主成分的方差在全部方差中所占比重稱為貢獻率,體現這個主成分的綜合能力的大小,即反映原來p個指標的信息的多少。
2)累積貢獻率:前k個主成分共有多大的綜合能力,用這個k個主成分的方差和在全部方差中所占比重來描述,稱為累積貢獻率。
我們進行主成分分析的目的之一是希望用盡可能少的主成分代替原來的p個指標。到底應該選擇多少個主成分,在實際工作中,所采用主成分個數的多少取決于能夠反映原來變量85%以上的信息量為依據,即當累積貢獻率≥85%時的主成分的個數就足夠了。最常見的情況是主成分為2到3個。
4、載荷矩陣
原始變量被主成分的提取率
主成分的貢獻率和累計貢獻率度量了從原始變量中提取了多少信息。
公共成分
定義:如果一個主成分僅僅對某一個原始變量有作用,則稱為特殊成分。如果一個主成分對所有的原始變量都起作用,則稱為公共成分。

5 主成分分析的步驟

第一步:由X的協方差陣或相關系數陣Σ,求出其特征根,即解方程,可得特征根。
第二步:求出特征根所對應的特征向量,
第三步:計算累積貢獻率,給出恰當的主成分個數。
第四步:計算所選出的k個主成分的得分。將原始數據的中心化值:
代入前k個主成分的表達式,分別計算出各單位k個主成分的得分,并按得分值的大小排隊。

基于協方差矩陣

基于相關系數矩陣

如果變量有不同的量綱, 變量水平差異很大,應該基于相關系數矩陣進行主成分分析。不同的是計算得分時應采用標準化后的數據。

6 主成分的應用與回歸

1、主成分分析能降低所研究的數據空間的維數。即用研究m維的Y空間代替p維的X空間(m<p),而低維的Y空間代替高維的x空間所損失的信息很少。即使只有一個主成分Y1(即m=1)時,這個Y1仍是使用全部X變量(p個)得到的。在所選的前m個主成分中,如果某個Xi的系數全部近似于零的話,就可以把這個Xi刪除,這也是一種刪除多余變量的方法。
2、多維數據的一種圖形表示方法。多元統計研究的問題大都多于3個變量,要把研究的問題用圖形表示出來是不可能的。然而,經過主成分分析后,我們可以選取前兩個主成分或其中某兩個主成分,根據主成分的得分,畫出n個樣品在二維平面上的分布情況,由圖形可直觀地看出各樣品在主分量中的地位。
3、用主成分分析法構造回歸模型。即把各主成分作為新自變量代替原來的自變量做回歸分析。
主成分回歸方法
主成分分析的一些注意事項
主成分分析依賴于原始變量,也只能反映原始變量的信息。所以原始變量的選擇很重要。
如果原始變量本質上獨立,那么降維就可能失敗,這是因為很難把很多獨立變量用少數綜合的變量概括。數據越相關,降維效果就越好。
分析結果并不一定會有清楚的解釋。這與問題的性質,選取的原始變量以及數據的質量等都有關系。
基于相關系數矩陣還是基于協方差矩陣做主成分分析?
有時基于相關系數矩陣和基于協方差矩陣求出的主成分會有很大不同,且兩者之間不存在簡單的線性關系。
一般而言,當分析中所選擇的經濟變量具有不同的量綱,變量水平差異很大,應考慮將數據標準化,選擇基于相關系數矩陣的主成分分析。對同度量或是取值范圍在同量級的數據,選擇基于協方差矩陣的主成分分析。
選擇幾個主成分?
主成分分析的目的是簡化變量,一般情況下主成分的個數應該小于原始變量的個數。關于保留幾個主成分,應該權衡主成分個數和保留的信息。
如何解釋主成分所包含的經濟意義?
主成分分析不要求數據來自于正態總體。一般認為當原始數據大部分變量的相關系數都小于0.3時,運用主成分分析的效果不顯著。

7 主成分分析的R語言實現

主成分分析的函數本篇介紹的主要有兩個。
一個是princomp,一個是psych里的principal。

princomp(x,cor=FALSE,scores=TRUE)

x為主成分分析數據集,cor=TRUE和FALSE分別代表是基于相關系數矩陣計算還是協方差矩陣計算。scores則代表是否存儲主成分得分。

principal(x,nfactors=2,rotate="varimax",scores=T,covar=F)

x為主成分分析數據集,nfactors為主成分個數,rotate表示旋轉方式(一般選方差最大,保證互不相關),scores則代表是否存儲主成分得分,covar=TRUE和FALSE分別代表是基于協方差矩陣計算還是相關系數矩陣計算。
這回用的數據是2006年城市統計年鑒285個地級市的經濟人口數據,探究gdp與人口之間的關系。
先做一個相關系數可視化。發現人口因子之間相互影響因子很高。

于是先對人口的幾個因子進行降維和主成分分析,中途發現第三產業從業人數(third)加入會使得系數矩陣不正定,后面就刪除了第三產業從業人數(third)。
分別用不同方式進行主成分分析結果。
princomp結果(基于協方差矩陣)
碎石圖


結果

主成分得分圖


princomp結果(基于相關系數矩陣)
碎石圖


結果

主成分得分圖

principal結果
碎石圖

因子關系圖


主成分得分圖

碎石圖表示的是曲線與縱坐標1交點的橫坐標即為主成分個數,而主成分得分荷圖是將原始數據的坐標映射在主成分分析的坐標上,事實上可以根據主成分得分在不同象限對原始數據進行分類,在本篇的樣例數據里其實就是可以通過人口生成的幾個主成分對中國地級市進行分類,可以區分出是在第一主成分得分高,第二主成分得分低的城市,亦或是其他排列組合的分類結果。關于這種可視化圖具體如何解釋。可以參照如下的文章。

http://www.cnblogs.com/SCUJIN/p/5965946.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,345評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,494評論 3 416
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,283評論 0 374
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,953評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,714評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,186評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,255評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,410評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,940評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,776評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,976評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,518評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,210評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,642評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,878評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,654評論 3 391
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,958評論 2 373

推薦閱讀更多精彩內容