在職場裡,隻要你接觸資料或者報表,就會聽到或者說出“一維表”、“二維表”、“大寬表”之類的稱謂。
可是很多人卻搞不清它們的差別和聯系,甚至覺得無所謂,反正有數就行了。可惜往往在資料清洗和畫圖表的時候,出現反複修改調整,頻繁踩坑,甚至直接影響資料分析結果。
尤其涉及不同部門,比如業務部門和技術部門,人力部門和資料部門之間,溝通時常出現:你說你的一維表,我說我的二維表。沒有統一口徑,造成了解歧義,甚至造成業務事故。
在接觸資料分析工作中,老海發現這種現象是一種很常見的認知誤區,很多人踩坑,甚至都不自知。
<h1 class="pgc-h-arrow-right">為什麼會出現這種了解誤區?</h1>
老海認為,根本原因是彼此間的了解角度不同,對資料表格的了解角度一般分為2種:
第一種:從存儲空間次元上
我們日常所說的表格,無論是excel還是資料庫表,基本都是二維表,不存在一維表這個概念! 資料表都是以二維空間次元,存儲在關系型資料庫中。它們是二維矩陣數組形态,也是我們常說的“大寬表”,包括了很多字段,類型主要為四種:
常見資料類型
一維表
這種結構,是最理想的存儲型資料結構,性能穩定,國内外通用。
第二種、從業務分析次元上
隻要從分析次元上看,才會出現我們經常提到的“一維表”和“二維表”
比如,以Excel為首的資料分析中提到的“一維表,二維表”,它們都是最常見的分析型資料結構
當然,“一維”與“二維”表,本身都是二維空間結構來存儲,是以隻有從分析次元上來看,它們兩者才有存在的意義。
接下來聊聊,“一維”和“二維”表:
<h1 class="pgc-h-arrow-right">“一維”是什麼?</h1>
“一維”表,一般都是代表實體屬性的表,它是實體對象集合的記錄表。
它的每一行表示一個獨立的實體對象,而每一清單示這個實體的某一個屬性
它的所有列屬性之間遵循MECE法則,彼此獨立互不重疊。
它的每一行包含所有屬性列,都在描述同一個實體對象,用于研究不同實體間的差異。
比如:在早餐行業裡的“一維”表,一般包括年份、城市、産品、職業、銷量字段,它們之間沒有重疊
每一行都能獨立代表一個實體對象,這種表格結構非常适合進行資料清洗和機器學習。
“一維”表存在的意義,在于它是資料庫設計領域的參考标準,幾乎所有主流技術均支援
它非常适合用于适合做流水記錄,資料埋點,統計分析,便于導出XLS、CSV、JSON等各種格式。
是以,一行資料就能包括對象的全部資訊,是“一維”表最大的特點!
而這種結構的缺點是資料量大且字段數量多,不友善檢視和展示。
<h1 class="pgc-h-arrow-right">“二維”表是什麼?</h1>
“二維”表是交叉屬性表,實體的兩個或者多個獨立屬性,進行交叉分析看屬性中元素的統計量。
它的所有列屬性之間不遵循MECE法則,彼此可以不獨立。
它的每一行中必然存在一個屬性的多個元素集合,也可以包含多個屬性的多個元素集合,用于研究實體屬性間的差異。
比如:不同年份下不同城市的豆漿和牛奶的銷量,注意到了嗎,存在兩個銷量度量,而豆漿和牛奶同屬于一個屬性:産品
二維表
“二維”表存在的意義,在于我們日常的閱讀習慣,友善我們直覺展示和定位資料,比較适合列印、彙報
比如上學時用到課程表,或者工作中的各種資料報表,都是使用這個表格樣式。
是以,利用行和列橫縱向定位資料,是“二維”表最大的特點!
但是這種樣式會對資料清洗造成非常大的麻煩,比如表頭、斜線、合并單元格都需要處理掉。
誰都見過的表格
<h1 class="pgc-h-arrow-right">“一維”表與“二維”表有何關聯?</h1>
“一維”與“二維”表 都能做分析做圖表,也都可以進行透視操作。
它們可以互相轉化,“一維”表是基礎,“二維”表是進階。
總體來說,可以分為三種情況:
“一維”可屬性交叉為“二維”表
“一維”可屬性聚合為“一維”表
“二維”可屬性逆視為“一維”表
具體操作步驟較多,老海之後會專門寫些相關内容,這裡不再贅述。
<h1 class="pgc-h-arrow-right">“一維”和“二維”表有何用處?</h1>
隻有有了“一維”和“二維”表,才能做好分析,才能選擇好圖表類型
很多課程和書上來就一堆可視化技巧工具,很多人不是不會做圖,難在做出圖表的資料。
最簡單的辦法,你可以試試:先看一個圖表,然後自己能不能反推出資料源的表格結構
老海敢說很多同學做不到,這就是很多人為什麼總是做不好圖表的根本原因!
無論你用Excel甚至Python,調試出合适的表格結構都是做圖表過程中最耗時的環節
<h1 class="pgc-h-arrow-right">如何“一維”和“二維”表來選擇合适的圖表類型?</h1>
一般來說,我們可以遵守以下規則:
當表格是“一維表”,實體屬性表,圖表資料結構有以下幾種情況:
一、1個類别/有序型屬性+1個數值/占比型
如:條形圖、折線圖、面積、直方等等都可以
二、1個類别/有序型屬性+2~3個數值/占比屬性
如:組合圖、散點圖、氣泡圖
三、2個層次類别/有序型+2~3個數值/占比
如:散點圖、氣泡圖
四、3個層次類别/有序型+1個數值/占比
如:環圖、樹形圖、旭日圖
當表格是“二維表”,交叉屬性表,圖表資料結構有以下幾種情況:
一、2個類型/有序型屬性+1個數值/占比型屬性
如:柱狀、條形、折現、面積、熱力圖
總之,無論“一維”或“二維”表,它包括的類型屬性+度量屬性<= 4個
<h1 class="pgc-h-arrow-right">一句話:盯住需求,調好表格,再做圖表</h1>
老海認為:明确分析目标,處理好“一維”表和“二維”表結構,有助于進行資料清洗規整,
避免圖表制作時,來回反複修改資料源結構,制作出最合适的圖表出來。