頭疼了這麼久的多表數據分析,主題模型一步就搞定了?

--

用一張表做數據分析並非難事,但在多數業務場景下,我們進行分析所需要的欄位往往分散在多張表中,這就造成了多表分析的最大困境:缺少欄位。

把大量的時間與精力花費在對多張表的數據整合處理,以及合併完成後對數據正確性的校驗上,可以說是老使用者煩心、新使用者不會的一大難題。

今天數據君就給大家介紹一個功能,幫助大家解決這個難題。

我們以下面兩張表舉例,假如需要去分析各個門店的銷售額達成情況,你會怎麼做?

大部分人的第一反應是:我得先把表合併一下。這麼想的原因在於目標和銷售額分散在兩個表中,不方便計算。

如果我們用傳統的方法,將店名作為依據合併,就會得到下面這張表:

這樣的數據一行一行看起來好像沒什麼問題,但如果直接拿來做分析,就會出現很明顯的數據錯誤。請看下圖,做了一個分組表,銷售指標直接翻了3倍,要是看見這樣的看板,銷售部門怕是會有很大意見了。

上述場景的核心問題在於,我們在實際分析時其實是依賴單表進行的,所以不得不把欄位都合併進一張表裡。雖然大家可以用五花八門的方法,歷經千辛萬苦將它解決,但這麼一個看似普通的場景,耗費如此多的精力完成,著實投入產出比太低了。

那有沒有真正針對多表分析場景的功能,在保證結果準確的同時能夠讓分析更加簡單輕鬆呢?我們可以利用BI工具的“主題模型”功能,下文以FineBI爲例。

還是這個場景,讓我們來看看主題模型是如何解決上述問題的。

第一步:在模型檢視建立起表與表之間的關聯關係。

第二步?

。。。。

沒有第二步!

一步到位直接開始分析!接下來讓我們一邊繼續完成分析,一邊瞭解主題模型的亮點。

亮點之一:支援跨表選擇欄位

可以看到,在建立模型關係之後,我們可以直接在左側拖拽來自於不同表的【銷售額】【年度銷售指標】兩個欄位進行分析。只需簡單兩步就能展現結果,並且最終的數據也沒有發生膨脹,得出正確的店鋪銷售額和目標情況。

建立模型關係後支援直接選擇來自不同表的欄位

接下來,我希望基於銷售額和目標計算出“銷售額差距”,銷售額差距=目標-銷售額。如何實現呢?在以往的情況下,如果用合併,那麼還是老樣子,會遇到數據膨脹的問題。如果想要新增一個計算欄位,那就又不得不去合併他們。

新手可能在這裡就卡住了,沒關係,我們來看亮點二是如何解決的!

亮點之二:支援跨表計算欄位

主題模型支援跨表計算欄位的建立,所以現在我們可以直接新建一個計算欄位,輸入sum_agg(年度銷售額指標)-sum_agg(銷售額)。雖然兩個欄位來自不同的數據表,但這個新建的計算欄位會基於分析區域的維度先聚合再做計算,可以保證數據正確。

現在的分析過程和以往並沒有什麼不同,但我們能夠選取到其他表的欄位直接參與計算,就不需要再回到數據處理的步驟去做表的合併。這樣,不僅數據不會出錯,靈活度也大大提升,更加易用。

來自不同表的欄位可以放在一起計算

亮點之三:計算欄位複用性提升

不僅如此,計算欄位也能夠跨元件複用。

在分析完各門店的差距之後,如果還想從新的維度出發,去分析各個大區目標差距情況,在以往的情況下,我們需要浪費時間新建一個計算欄位,再寫一遍公式。

而現在,透過主題模型,我們不需要重複操作,可以直接選取建立好的計算欄位來使用,然後更換分析的維度即可呈現對應結果。

計算欄位可以在不同元件之間複用

多事實表分析?一樣輕鬆拿捏!

上面是一個簡單的維度表關聯事實表的場景,讓我們再看看更難處理的多事實表關聯分析場景:基於產品大類,對銷售額及回款情況做分析。

由於銷售額和回款兩個指標分散在兩張事實表中,如果用傳統做數據集的方法,第一步先要憑藉產品id欄位,把“產品大類”從維度表裡分別拼接到兩張事實表中,第二步再分別對事實表做分組彙總。

對事實表處理後的分組彙總表

分別做出上圖的表結構後還得依據“產品大類”再做一次左右合併才能得出“產品大類-銷售額-回款額”的數據表。這個過程中會產生多張冗餘的表。不僅如此,由於在過程中破壞了原表的結構,這次分析的所有動作都變得“一次性”:假如我現在改變分析的維度,基於產品小類來做分析,那我所有的步驟都得全部重做一遍。

我們可以想象一下,如果表更多,數據量更大,整個處理過程將會異常複雜!

傳統方法產生大量無用中間表

這個場景我們同樣可以透過建立主題模型來解決!

首先透過產品id建立彼此的關聯關係,接著就可以直接進入元件進行多維度的分析。即使更換分析的維度,也不需要從頭再來,只要拖拽新的欄位進入元件即可。原來花費十多分鐘處理數據表,現在幾秒鐘就搞定了。

一方面,主題模型節省了大量反覆合併建表花費的時間,且更加靈活,給予使用者更多自由分析的空間。另一方面,相比以往做大寬表的方式,主題模型僅在分析時根據維度自動進行必要的合併、聚合計算,也讓整體效能更上一個臺階,帶來更順滑的分析體驗。

以上就是本期的內容分享~~,碼字不易,如果覺得對你有一點點幫助,歡迎「追蹤」,「按贊」,「分享」喔,我會持續為大家創作優質的內容~~

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

我是「數據分析那些事」。常年分享數據分析乾貨,不定期分享好用的職場技能工具。各位也可以關注我的Facebook,按讚我的臉書並私訊「10」,送你十週入門數據分析電子書唷!期待你與我互動起來~

☞☞☞點選下方圖片免費體驗FineBI工具demo

文章推薦:

數據分析之落地 sop 流程

那些年,背過的SQL題

MySQL常用指令碼

商業分析應該怎麼做?一篇文章把思維和工具說清楚了!

乾貨 | 如何搭建用戶分析體系

回顧十週入門數據分析系列文:

關注數據君的臉書,ins(全網同名)

我是「數據分析那些事」。常年在臉書ins分享數據分析乾貨,不定期分享好用的職場技能工具。按贊我的臉書,並在臉書置頂帖子下回復SQL50,會有MySQL經典50題及答案贈送唷!

--

--

數據分析那些事
數據分析那些事

Written by 數據分析那些事

這是一個專注於數據分析職場的內容部落格,聚焦一批數據分析愛好者,在這裡,我會分享數據分析相關知識點推送、(工具/書籍)等推薦、職場心得、熱點資訊剖析以及資源大盤點,希望同樣熱愛數據的我們一同進步! 臉書會有更多互動喔:https://www.facebook.com/shujvfenxi/

No responses yet