EDA及其應用

所謂探索性數據分析(Exploratory Data Analysis,以下簡稱EDA),是指對已有的數據(特別是調查或觀察得來的原始數據)在儘量少的先驗假定下進行探索,通過作圖、製表、方程擬合、計算特徵量等手段探索數據的結構和規律的一種數據分析方法。特別是當我們對這些數據中的信息沒有足夠的經驗,不知道該用何種傳統統計方法進行分析時,探索性數據分析就會非常有效。探索性數據分析在上世紀六十年代被提出,其方法由美國著名統計學家約翰·圖基(John Tukey)命名。

EDA及其應用

EDA的出現主要是在對數據進行初步分析時,往往還無法進行常規的統計分析。這時候,如果分析者先對數據進行探索性分析,辨析數據的模式與特點,並把它們有序地發掘出來,就能夠靈活地選擇和調整合適的分析模型,並揭示數據相對於常見模型的種種偏離。在此基礎上再採用以顯著性檢驗和置信區間估計爲主的統計分析技術,就可以科學地評估所觀察到的模式或效應的具體情況。

所以概括起來說,分析數據可以分爲探索和驗證兩個階段。探索階段強調靈活探求線索和證據,發現數據中隱藏的有價值的信息,而驗證階段則着重評估這些證據,相對精確地研究一些具體情況。在驗證階段,常用的主要方法是傳統的統計學方法,在探索階段,主要的方法就是EDA,下面我們重點對EDA做進一步的說明。

EDA的特點有三個:一是在分析思路上讓數據說話,不強調對數據的整理。傳統統計方法通常是先假定一個模型,例如數據服從某個分佈(特別常見的是正態分佈),然後使用適合此模型的方法進行擬合、分析及預測。但實際上,多數數據(尤其是實驗數據)並不能保證滿足假定的理論分佈。因此,傳統方法的統計結果常常並不令人滿意,使用上受到很大的侷限。EDA則可以從原始數據出發,深入探索數據的內在規律,而不是從某種假定出發,套用理論結論,拘泥於模型的假設。

二是EDA分析方法靈活,而不是拘泥於傳統的統計方法。傳統的統計方法以概率論爲基礎,使用有嚴格理論依據的假設檢驗、置信區間等處理工具。EDA處理數據的方式則靈活多樣,分析方法的選擇完全從數據出發,靈活對待,靈活處理,什麼方法可以達到探索和發現的目的就使用什麼方法。這裏特別強調的是EDA更看重的是方法的穩健性、耐抗性,而不刻意追求概率意義上的精確性。

三是EDA分析工具簡單直觀,更易於普及。傳統的統計方法都比較抽象和深奧,一般人難於掌握,EDA則更強調直觀及數據可視化,更強調方法的多樣性及靈活性,使分析者能一目瞭然地看出數據數據中隱含的有價值的信息,顯示出其遵循的普遍規律及與衆不同的突出特點,促進發現規律,得到啓迪,滿足分析者的多方面要求,這也是EDA對於數據分析的的主要貢獻。

值得一提的是,正因爲EDA更強調直觀及圖形顯示,所以它採用了很多創新的可視化技術,目前這些可視化技術已經有了很好的實現載體,目前最爲主流的探索性數據分析軟件是以圖形效果好、交互性強、易學易用著稱的統計發現軟件JMP。即使不具備統計學基礎的分析者也能在JMP的幫助下,輕鬆地發現數據、擬合以及殘差的規律,獲得意想不到的發現,爲後續的分析啓發思路、指明方向。

下面,用一個典型的小案例來說明EDA的實際應用。

我們爲了對全球經濟的發展趨勢和世界頂級公司的經營狀況做一些研究,可以從公共網站上下載數據(如福布斯2000強名單),用JMP略作整理之後可以得到如表一所示的數據表,其中包含了上榜公司的名稱、所屬行業、所屬國家、上榜年份、上榜排名、市場價值、資產額、銷售額、利潤額等9個變量,總計14000條記錄(每年2000條,從2004年至2010年共7個年度)。現在的問題是:數據有了,其中到底隱藏着怎樣的有價值的信息呢?我們又如何發現這些信息呢?

有人說:既然是連續型數據,又包含時間變量,應該用時間序列方法進行分析!的確,時間序列可以告訴我們變量隨時間變化的趨勢,然而實際中我們所希望和可以得到的有價值的信息,往往遠不止“趨勢”這麼簡單,更何況,需要分析這些商業數據的用戶常常並不清楚什麼是“時間序列分析”方法。

還有人說:用一些傳統的圖形工具,比如折線圖、柱狀圖、餅圖等等來分析,不就可以進行數據探索了嗎?這種方法似乎是可行的,但這些數據中有不少類別變量,他們的分類水平很多(例如年份跨越7年,行業分爲30個,國家有75個之多,公司名稱更是多達3505個),這樣一來,光作圖可能就讓我們筋疲力盡了,“數據探索”又從何談起?

什麼方法才能很好地探索這些數據,從中發現我們所期望的、甚至意想不到的重要信息呢?我們應該從哪裏着手分析才能找到這些信息呢?我們來嘗試運用現代EDA中的可視化技術“泡泡圖”來邊看邊想。在JMP軟件的幫助下,我們可以很快得到類似圖一的圖形,其中的橫軸代表公司的市值,縱軸代表公司的銷售額,泡泡的大小代表公司的利潤額,泡泡的顏色代表公司所屬的行業。最有意義的`是,所有的泡泡並不是靜止不動的,它們的位置、大小等都會隨着年度的變化而動態變化。與此同時,整個變化的歷史軌跡線也會在圖中顯示出來。

這樣一來,我們就可以直觀地發現一些明顯的數據特徵。就拿圖中標識出來的兩家知名公司來說。我們會發現通用電氣General Electric的經營業績比較穩定,而埃克森美孚Exxon Mobil就相對顯得大起大落一些。雖然兩者有明顯不同,但自2008年起,市場駕駛均有顯著的回落,這應當與當時席捲全球的經濟危機有關。

有人在發現這些特徵後會迸出一些新的想法:通用電氣、埃克森美孚都是美國的企業,中國企業的表現又如何的呢?我們可以在使用“泡泡圖”的同時,在JMP中調用“數據篩選”功能就可以得到類似圖三的界面。

從中可以清晰地觀察到,自2004年以來的7年間,共有392個次的中國企業登上了福布斯排行榜。雖然在數量上、市值、銷售額等經營指標上與世界頂級企業有一定差距,但以中石油Petro China、中石化Sinopec China Petroleum等位代表的一批國有大型企業發展速度很快,令世界矚目。

實際上,探索性數據分析還遠遠不止這些。分析人士完全可以在數據分析的初期不受太多理論條件的束縛,充分展開想象的翅膀,多角度、多層面地對現有數據的規律進行可視化的探索,新的線索往往就會自然而然地出現了,爲下一步的統計建模與預測等精細化分析奠定良好的基礎。

總之,探索性數據分析強調靈活地探求線索和證據,重在發現數據中可能隱藏着的有價值的信息,比如數據的分佈模式、變化趨勢,可能的交互影響,異常變化等等,而傳統的統計方法則側重於評估已經發現的證據,通常要求分析人員具備一定的統計學基礎。根據不同的業務目的和數據資源選用不同的技術,或者綜合使用這兩類技術,將會使我們更快地獲得更多的發現。對於大都不具備統計學功底但數據分析任務卻越來越多的企業人員(如市場分析人員、質量管理人員等)來說,重視、學習並用好探索性數據分析往往能事半功倍。