Lecture 2 樣本性質分析
前面介紹了關於 rattle的資料載入,在此章,我們載入myCars.csv為範例說明資料性質分析。載入之前,rattle不會自動載入一個重要的套件ggplot2,所以,讀者在啟動 rattle 之前,請於主控台執行載入 library(ggplot2)
載入資料,則如圖 2.1 所示,Execute 後,載入資料。再點選 View,如圖 2.2,顯示資料內容。
依據R的官方文件,變數原文說明複製如下
mpg: Miles/(US) gallon
cyl: Number of cylinders
disp: Displacement (cu.in.)
hp: Gross horsepower
drat: Rear axle ratio
wt: Weight (1000 lbs)
qsec: 1/4 mile time
vs: 1=sedan, 0=others
am: Transmission (0 = automatic, 1 = manual)
gear: Number of forward gears
carb: Number of carburetors
最後一欄AM是我把am轉成字串,給練習題用的分類變數。
接下來對上面這筆資料進行統計性質分析,我們首先進入Explore,如圖 2.3
圖 2.3 也指出了rattle設計的結構是一種樹形的階層結構。最上層是分析選單方格:由Data, Explore到Log。次一層Type,則是上一層各個選項的內容。依此類推,有此一概念後,這樣我們學起來就簡易許多。
2.1 Summary– 資料的敘述統計
rattle的資料分析,對於介面使用的統計函數的觀念,會提供詳細解說。如圖 2.3,解釋了Summary 這個階層內的最底層7個分析函數的內容。我們依次解說實做。
2.1.1 Summary- 簡易性質摘要
Summary之下的第1個就是Summary(簡易性質摘要),按Execute後,會將資料檔所有選擇的變數,呈現出變數的分量性質:極小值~極大值。詳細見圖 2.4。2.1.2 Describe
第2個就是Describe (描述, 變數詳細性質摘錄),按Execute後,會將資料檔所有選擇的變數, 呈現每個變數的詳細性質。除了前面的分量之外,還包括了:個數(n),缺值數目(Missing),和無重複數目(Unique)。詳細見圖 2.5。以mpg為例,22個觀察值中,有2個重複,無重複為20。
2.1.3 Basics
第3個是Basics(統計基礎性質,變數數據的基礎敘述統計),按Execute後,會將資料檔所有選擇的變數,呈現每個變數詳細統計性質,如圖 2.6。包括四階動差:平均數,變異數,峰態和偏態。這裡注意:峰態一值,是減去了3。因為峰態=3代表了常態。所以它提列的數值,代表了與常態對比。
2.2 Distribution– 資料的分佈性質
Explore 之下第二個就是資料分佈圖(Distribution)繪製。點選後,可以看到rattle繪製的五種圖:Box-plot (盒鬚圖),Histogram (直方圖),…. Pairs (兩兩散佈矩陣圖) 等五種。以圖 2.10為例,依圖指示,選前4個變數以直方圖表示,按Execute後,就會畫出如圖 2.11基於機率密度圖的直方圖。
圖 2.11 的基於直方圖histogram計算的的密度分佈,是由高階繪圖套件ggplot2產生的。
圖 2.11 的顯示,每張圖下方都有惱人的文字 “Rattle 2015-Dec-17……..”,這記錄了圖形產生的時間。消除他的方法很簡易:在主選單選Settinsg後,點選消除Verbose,這記錄就會消除了。
如果選Pairs,就會繪製出圖 2.12的圖:主對角線是變數自己的kernel density圖,下三角是兩兩散佈矩陣圖,上三角則是相關係數。
圖 2.10 的繪製項目選擇,需注意幾點:選一個圖,多個變數時(如此節範例),rattle會將圖文框分割成n^2,產生一頁的圖。如果是一個變數多個圖,就不會這樣顯示,會一個圖一個圖顯示。讀者可以自行試一試。
最後,在選項旁,有一個Benford選項,這是依照Benford’s law的分佈圖,是用於偵測資料中的異常現象,一般用在會計數據的分析。
2.3 Correlation– 資料的相關係數矩陣
最後是變數與變數之間的相關係數(Correlation)。如圖 2.13圈選,按Execute之後,就會產生下半部的數值,以及圖 2.14用熱力圖(heatmap)顯示的效果。
圖 2.14的相關係數熱力圖(heatmap),使用漸層方式表示效果。藍色調的是正相關,紅色調的是負相關,深淺表示相關強度,白色就是相關係數接近0。圓面積是以相關係數當半徑的圓。自己和自己的相關係數為1,就是單位圓面積。
如圖 2.13選的,上面的結果,是由Pearson rank排序(Ordered)的相關數係數熱力圖,圖 2.15是相關係數散佈圖,是圖 2.12 一個改良版,也是特殊的功能。讀者試一試能否畫出來。
承圖 2.13,如果選擇右邊的Hierarchical method顯示,會顯示出一種轉置的樹形圖,如圖 2.16。我們垂直劃一條 1的補助線,來看原始相關係數。因為這個結構是集群(Cluster method)方法,我們就不在這裡解釋。同樣,選項的最後兩個,Principal Component 和Interactive,都屬於多變量進階方法,在後面我們會再回來解介紹這些方法。
最後,我們來看分組顯示的效果。myCars.csv這筆資料有一個分組變數AM,圖 2.10中間有一個Group By的選項,在此選擇AM(如圖 2.17),再執行分佈圖繪製。
依照圖 2.17 選4個變數後,繪出圖 2.18的分組圖。與圖 2.11的分布圖對比,分組顯示Group By的效果,會自動使用色彩,效果十分亮眼。
如圖 2.17下方解說,rattle會自動將類別變數歸於下方。執行圖 2.19的內容,顯示出圖 2.20的結果。
ratlle 的繪圖套件,如果選擇多個變數,例如,同時選擇數值和類別,顯示的時候,圖檔會覆蓋;這個問題,用程式時,只要宣告dev.new() 開新繪圖視窗即可。在rattle,我們只要選擇Use Cairo Graphics Device即可。如圖 2.21。如圖內解說,這個設備,是一個新型的繪圖套件,也會將多個圖形做多重頁面顯示。多張圖,不會被最新的圖覆蓋。除此,這個裝置也將圖形的解析效果,更為精緻化。
圖 2.21 選擇繪圖設備