為什麼要使用數據視覺化
當您需要使用具有大量資料的新資料來源時,使用資料視覺化來更好地理解資料非常重要。
資料分析過程大多時候分為 5 個步驟:
- 擷取 - 從電子表格、SQL、網路等取得資料。
- 乾淨 - 在這裡我們可以使用探索性視覺效果。
- 探索 - 在這裡我們使用探索性視覺效果。
- 分析 - 在這裡我們可以使用探索性或解釋性的視覺效果。
- 分享 - 這裡是解釋性視覺效果的所在地。
資料類型
為了能夠為給定的度量選擇合適的繪圖,了解您正在處理的資料非常重要。
定性又稱為分類類型
名目定性數據
與項目本身沒有關聯的順序或等級的標籤。
範例:性別、婚姻狀況、菜單項目
序數定性數據
具有順序或排名的標籤。
範例:字母等級、評級
定量又稱數字類型
離散定量值
數字不能分割成更小的單位
範例:書中的頁數、公園中的樹木數量
連續定量值
數字可以分割成更小的單位
範例:身高、年齡、收入、工作時間
統計摘要
數值數據
平均值:平均值。
中位數:資料排序時的中間值。
眾數:最常出現的數值。
變異數/標準差:傳播或分散的測量。
範圍:最大值和最小值之間的差異。
分類資料
頻率:每個類別出現的次數。
模式:最常見的類別。
視覺化
您可以非常快速地洞察新資料來源,也可以更輕鬆地查看不同資料類型之間的聯繫。
因為當你只使用標準統計來總結你的數據時,你會得到最小值、最大值、平均值、中位數和眾數,但這在其他方面可能會產生誤導。就像安斯科姆四重奏所示:平均值和偏差始終相同,但數據分佈始終不同。
在資料視覺化中,我們有兩種類型:
- 探索性資料視覺化
我們用它來深入了解數據。它不需要具有視覺吸引力。
- 解釋性資料視覺化
當呈現給使用者時,這種視覺化效果必須準確、富有洞察力且具有視覺吸引力。
圖表垃圾、數據墨水比率和設計完整性
圖表垃圾
為了能夠心無旁騖地閱讀透過繪圖提供的信息,避免圖表垃圾非常重要。喜歡:
- 粗網格線
- 視覺效果中的圖片
- 色調
- 3d 組件
- 裝飾品
- 多餘的文字
數據墨水比
視覺效果中的圖表垃圾越少,數據墨水比率就越高。這只是意味著視覺中用於傳輸數據訊息的「墨水」越多,效果就越好。
設計完整性
謊言因子計算如下:
$$
text{謊言因子} = frac{text{圖形中顯示的效果大小}}{text{資料中的效果大小}}
$$
Delta 代表差異。因此,它是圖形中顯示的相對變化除以數據中實際的相對變化。理想情況下應該是 1。如果不是,則表示資料呈現方式與實際變化存在一些不符。
上面的例子取自wiki,在比較每個醫生的像素時,謊言因子為3,代表加州醫生的數量。
數據整齊
確保您的資料已正確清理並可供使用:
- 每個變數都是一列
- 每個觀察結果都是一行
- 每種類型的觀察單元都是一個表格
資料的單變量探索
這是指對資料集中單一變數(或特徵)的分析。
長條圖
- 總是從 0 開始繪製,以真實可比的方式呈現值。
- 將標稱資料排序
- 不要對序數資料進行排序 - 在這裡,了解最重要類別出現的頻率比最頻繁出現的頻率更重要
- 如果您有很多類別,請使用水平條形圖:將類別放在 y 軸上,以提高可讀性。
直方圖
- 長條圖的定量版本。這用於繪製數值。
- 值被分組到連續的箱中,每個箱繪製一個條形
KDE - 核密度估計
- 通常是高斯分佈或常態分佈,用來估計每個點的密度。
- KDE 圖可以更清楚地揭示趨勢和分佈形狀,特別是對於分佈不均勻的數據。
圓餅圖和圓環圖
- 資料需採用相對頻率
- 圓餅圖在最多 3 個切片時效果最佳。如果有更多的楔子要顯示,它就會變得難以閱讀,並且不同的數量也很難比較。那麼您會更喜歡長條圖。
資料的雙變量探索
分析資料集中兩個變數之間的關係。
簇狀長條圖
- 顯示兩個分類值之間的關係。這些條形根據第一個變數的層級組織成簇。
散點圖
- 每個資料點都單獨繪製為一個點,其 x 位置對應於一個特徵值,y 位置對應於第二個特徵值。
- 如果繪圖出現過度繪製(太多數據點重疊):您可以使用透明度和抖動(每個點都稍微偏離其真實值)
熱圖
- 直方圖的二維版本
- 資料點的放置方式是其 x 位置對應於一個特徵值,其 y 位置對應於第二個特徵值。
- 繪圖區域被劃分為網格,點數在網格中相加,計數以顏色表示
小提琴情節
- 在較低的抽象層次上顯示定量(數值)和定性(分類)變數之間的關係。
- 分佈像核密度估計一樣繪製,因此我們可以有一個清晰的
- 要同時顯示關鍵統計數據,您可以在小提琴圖中嵌入箱型圖。
箱線圖
- 它還在較低的抽象層次上繪製了定量(數值)和定性(分類)變數之間的關係。
- 與小提琴圖相比,箱線圖更傾向於數據的總和,主要只是報告每個類別層級上數值的一組描述性統計。
- 它視覺化資料的五個數字摘要:最小值、第一四分位數 (Q1)、中位數 (Q2)、第三四分位數 (Q3) 和最大值。
箱型圖的關鍵元素:
方框:圖的中心部分代表四分位數範圍(IQR),即第一個四分位數(Q1,第25 個百分位數)和第三個四分位數(Q3,第75 個百分位數)之間的範圍。這包含中間 50% 的數據。
中位數線:在方框內,一條線代表資料集的中位數(Q2,第 50 個百分位數)。
晶須:從方框延伸出來的線(稱為「晶須」)顯示 Q1 和 Q3 IQR 1.5 倍以內的資料範圍。它們通常會擴展到此範圍內的最小值和最大值。
離群值:任何超出 IQR 1.5 倍的資料點都被視為離群值,通常由鬍鬚之外的單點或標記表示。
組合小提琴圖與箱型圖
小提琴圖顯示不同類別的密度,箱線圖提供總統計
刻面
- 資料被劃分為不相交的子集,最常見的是依分類變數的不同層級劃分。對於資料的每個子集,在其他變數上呈現相同的繪圖類型,即具有不同分類值的彼此相鄰的更多直方圖。
線圖
- 用來繪製一個數字變數相對於第二個變數的趨勢。
分位數-分位數 (Q-Q) 圖
- 是一種繪圖,用於將資料集的分佈與理論分佈(如常態分佈)進行比較,或比較兩個資料集以檢查它們是否遵循相同的分佈。
群體圖
- 與散佈圖一樣,每個資料點根據其在繪製的兩個變數上的值繪製位置。與普通散佈圖中的隨機抖動點不同,點的放置盡可能接近其實際值,而不允許任何重疊。
蜘蛛情節
- 比較徑向網格上不同類別的多個變數。又稱雷達圖。
有用的連結
我的樣本筆記本
範例程式碼
用於範例圖的庫:
-
Matplotlib:一個用於視覺化的多功能函式庫,但可能需要一些程式碼工作才能將常見的視覺化組合在一起。
- Seaborn:建立在 matplotlib 之上,增加了許多函數,使常見的統計視覺化更容易產生。
-
pandas:雖然這個函式庫包含一些方便的方法來視覺化連接到 matplotlib 的數據,但我們主要將其用作處理數據的通用工具(https://pandas.pydata.org/Pandas_Cheat_Sheet.pdf ).
延伸閱讀:
- Anscombes Quartett:數據統計相同,但分佈不同:https://en.wikipedia.org/wiki/Anscombe%27s_quartet
- Chartchunk:https://en.wikipedia.org/wiki/Chartjunk
- 資料墨水比:https://infovis-wiki.net/wiki/Data-Ink_Ratio
- 謊言因素:https://infovis-wiki.net/wiki/Lie_Factor
- 整齊的資料:https://cran.r-project.org/web/packages/tidyr/vignettes/tidy-data.html
- 色盲友善的視覺化:https://www.tableau.com/blog/examining-data-viz-rules-dont-use-red-green-together
以上是數據視覺化基礎知識的詳細內容。更多資訊請關注PHP中文網其他相關文章!