主成分分析基於R


 

 

一、實驗目的:熟悉主成分析的思想,掌握求主成分的方法以及R語言代碼

 

二、實驗內容:對於從不同的數據出發,掌握三種求主成分的方法,以及相應的R語言代碼。同時要求對命令輸出結果進行理解,解釋。

 

三、實驗設備與平臺:R語言

 

四、涉及的知識點:數據標準化,矩陣的特徵值,特徵向量,協方差矩陣,變量的相關係數矩陣,主成分分析思想,求解主成分的方法。

 

五、實驗過程

從協方差矩陣出發,求主成分。


 

Comp.s爲從協方差矩陣求主成分的函數,輸出結果爲list形式。

其中,CP爲累計貢獻率,當累計貢獻率超過80%,即可確認主成分的個數m

values爲協方差矩陣的特徵值

vectors爲協方差矩陣的特徵值對應特徵向量

輸出結果如下:

 

 

 

由結果可知,當m2的時候累計貢獻率達到94.2179%大於80%,即認爲這兩個主成分以提取了絕大部分原數據的信息。

以下爲第一,第二主成分Z.1Z.2

Z.1=0.88915x1+0.30956x2+0.33701x3

Z.2=0.32290x1-0.94628x2+0.01726x3

對於數據存在量綱的不同,要對數據進行中心化或者標準化。

 

 

 

 

 

 

 

 

 

 

從相關係數矩陣出發,求主成分分析

 

 

 

由結果可知,從相關係數矩陣出發,求得的主成分和從協方差出發求得的主成分的結果一樣。

 

相關過程解釋也和上述一樣。

 

------------------------------------------------------------------------------------------------------------------------------

 

由上述輸出結果可得,m2的時候,累計貢獻率高達94.2179%,大於80%,即m=2.

 

由協方差矩陣的特徵值以及特徵向量可以得到兩個主成分爲:

Z.1=0.8892x1+0.3096x2+0.3370x3

Z.2=0.3229x1-0.9462x2+0.0172x3

 

 

 

由結果可知,從相關係數矩陣出發,求得的主成分和從協方差出發求得的主成分的結果一樣。

 

相關過程解釋也和上述一樣。

對於主成分分析的基本原理,可以參考一下點擊打開鏈接(轉http://www.cnblogs.com/pinard/)


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章