原理
GPCA是對按時間順序排列的面板數據進行PCA,尋找一個對于所有數據表而言是統一的簡化子空間,使每張數據表在其上的投影得以近似表示,并且從全局來看,該子空間的綜合效果最佳。GPCA分兩步走,首先需要將多個不同時間點的數據表整合成統一的全局數據表,而后用PCA進行分析。
若統計n個樣本點,使用相同的p個指標變量來描述, 每年一張數據表,T年共有T張數據表,按照列合并的方式,面板數據可以構成一個全局數據表X,行數為T×n,變量數仍為p。
基于全局數據表的GPCA建模步驟如下:
(1) 數據的標準化:利用標準差標準化法,對每一列的原始數據分別進行標準化處理。記標準化后的數據表為X*。
(2) 計算X*矩陣的協方差V。
(3) 求V的前m個特征值λ1≥λ2≥... ≥λm及對應的特征向量μ1≥μ2≥... ≥μm,它們標準正交,特征向量為主軸。
(4) 計算各個特征值的貢獻率λk/(λ1+λ2+...+λm)。一般取累積貢獻率達75%以上的特征值對應的全局主成分即可。
(5) 由于X*是標準化的,則第m主成分Fm=X*×μm。
GPCA和PCA的異同
相同之處:
(1)兩種方法的基本原理大致相同。GPCA和PCA都在保證數據信息缺少最少的原則下,利用正交變換,將一系列可能線性相關的變量轉換為一組線性不相關的新變量,從而利用新變量在更小的維度下展示數據的特征。
(2)在操作步驟上,GPCA除第一步外用r軟件做主成分分析,其他步驟與PCA基本相同。
不同之處:
(1)兩種方法的信息提取不同。GPCA將橫斷面數據與時序數據結合起來,打破了PCA的應用局限性:無法處理含有時間序列的面板數據。不同于PCA從單一橫斷面數據提取信息,GPCA產生的主成分是從多個橫斷面數據中綜合提取,信息量損失更小。
(2)GPCA能夠反映事物發展的進程,由于其主成分是從多個時間點的共同作用下提取,因此克服了系統分析的統一性、整體性和可比性的難題。而PCA無法做到,因為各時間點提取的主成分各不相同,因此不能直接比較不同時間點的情況。
(3)GPCA在長期數據分析上更具有穩健性和代表性,有效避免了PCA由于不同時間點之間的短期波動引起的結果偏差。
以R語言為例實現GPCA
整理2016~2020年某城市11個行政區的10個宏觀指標,賦予相同的時間權重1,疊加得到55*12的全局數據表。需要案例數據進行練習的朋友可以回復關鍵詞“GPCA”獲取。
加載軟件包,讀取數據
() () (dplyr) (psych) data"D:/data.xlsx") #根據實際情況設置目錄
為了消除數據量綱的影響,采用Z-score標準化方法。
as.(scale(data[,-c( 1: 2)])) ##標準化##
進行KMO檢驗和球形檢驗,其中用r軟件做主成分分析,KMO檢驗統計量 MSA=0.76(一般認為應大于0.70),球形檢驗P=1.-113
KMO( cor( )) # #KMO檢驗## .( ) # #球形檢驗##
從累計貢獻率可見,前兩個主成分已包含原始數據79%以上信息,前四個主成分則包含原始數據90%以上信息。
rm1##計算相關系數矩陣## rs1 ##求解特征值和相應的特征向量## val $##提取特征值(主成分的方差)## ##換算標準差## ce ##計算方差貢獻率## n##計算累積貢獻率##
本例選擇前四個主成分代替10個宏觀指標,構建新數據集。
U as.(rs1$) ##提取特征向量(載荷矩陣)## PC ##矩陣乘法,獲得PC score## (PC) "PC", 1:ncol(PC)) as.data.frame(data[,c( 1: 2)]), as.data.frame(PC[,c( 1: 4)])) ##輸出模型數據表##
請注意,各主成分包含的原始變量信息可能重疊,對各主成分的定義以及結果的解釋需慎重。通過建模過程中計算的載荷矩陣,可得到各主成分的因子載荷 ( )。載荷矩陣中,列代表主成分,行代表原始變量。因子載荷的數值介于-1至1之間,可理解為該主成分可以解釋原始變量的多少信息。絕對值越大,該主成分越能代表對應的原始變量。
參考文獻
鄭行輝, 羅鄂湘. 基于時序立體數據的財務困境預測實證研究——以我國上市醫藥公司為例[J]. 科技與管理, 2010, 12(06): 65-69. DOI: 10.16315/j.stm.2010.06.018
朱琳娟, 吳冰. 基于全局主成分分析的珠三角城市群經濟增長質量評價[J]. 社會科學前沿, 2021, 10(6): 1485-1490. DOI: 10.12677/ASS.2021.
▼RCT隨機化小程序推薦▼