彭可欣
摘要:以Matlab軟件為工具,對2013年中國統計年鑒記錄的全國主要城市氣溫數據進行因子分析。闡述了數據預處理與因子分析的具體過程,結合地理知識,對因子分析結果進行解釋。
關鍵詞:中國統計年鑒;氣溫數據;因子分析;Matlab
引言:氣溫是氣象數據顯著特征,也是人們認識和感受一個城市的主要指標。中國幅員遼闊,各地氣溫背后的是否有規律性的因素,是地理學習關心的問題。為此,本文使用Matlab 2014軟件,對2013年中國統計年鑒中記錄的2012年全國主要城市氣溫數據進行因子分析,從數據的角度,分析了氣溫背后的因素。闡述了數據預處理與分析的具體過程,并結合地理知識,對因子分析結果進行解釋。
1.數據來源與預處理
數據來源為國家統計局發布的中國統計年鑒,由于2014年以后的統計年鑒僅提供數據圖片,無法直接提取數據,故采用2011、2012、2013三年中國統計年鑒中記錄的,全國31個主要城市氣溫數據為研究對象[1]。將三年數據整合為一張excel二維表,行為31個主要城市名稱,列數據為三年內各城市1月到12月的月平均氣溫(攝氏度)合并數據。在Matlab 2014軟件平臺下,使用xlsread函數將excel文檔讀取成原始數據矩陣X,再使用統計工具箱提供的zscore函數,對原始數據矩陣X的每一列,進行均值為0標準差為1的標準化變換,經過轉置變換后形成36*31的矩陣XR。
2.因子分析過程
使用Matlab統計工具箱中提供的factoran函數進行因子分析,具體步驟如下:
a)嘗試確定因子數量。由于缺乏先驗知識,故采用嘗試的方式確定公共因子數量,先嘗試4個公共因子的情況,使用factoran的最大方差旋轉法計算,程序如下:
[lambda, psi, T, stats] = factoran(XR,4);
再計算公共因子的貢獻率:
Contrbut = 100*sum(lambda.^2)/31;
貢獻率結果依次為41.6647、38.4843、18.8850、0.2203。前兩個因子的累積貢獻率達到80%,故可考慮使用兩個公共因子的情況。
b)進行因子分析。針對2因子情況,采用factoran的最大方差旋轉法,使用默認參數計算,[lambda, psi, T, stats] = factoran(XR,2)。
載荷矩陣的估計值lamdba結果如圖1所示。
3.因子分析結果
綜合估計值結果來看,昆明的因子lamdba值較為特殊,其第一因子lamdba值0.4933是所有城市第一因子中的最小值,其第二因子lamdba值0.7923是所有城市第二因子中的最大值,同樣的規律適用于貴陽和成都。將昆明的這種特殊性,放到2003到2013年十年間全國31個主要城市氣溫值中比較,昆明的月氣溫標準差為4.3507,是全國31個主要城市中最低的;昆明月平均氣溫16.11,月平均氣溫為16度的另外三座城市分別是南京、合肥、武漢,而南京、合肥、武漢的月氣溫標準差分別為9.29、9.32、9.13,遠高于昆明。昆明地處云貴高原中部,三面環山、南瀕滇池,氣溫穩定濕潤。可見,兩個因子分別反應了氣溫的穩定度與舒適度,昆明的計算結果最好,是氣溫最為穩定和舒適的城市,其次分別是貴陽和成都。
參考文獻
[1] 中國統計年鑒(http://www.stats.gov.cn/tjsj/ndsj/)