- 產品
- 產品解決方案
- 行業解決方案
- 案例
- 數據資產入表
- 賦能中心
- 伙伴
- 關于
時間:2022-08-29來源:別軟弱瀏覽數:685次
如果是要分析細分人群(比如某個級別的用戶,比如30歲以內的用戶,比如學生用戶等)的歷史數據,切記注意要沿用歷史狀態哦,因為他們的身份狀態會隨時間變化而變化~當然,有很多信息歷史和現在是不會變的,比如性別等。這種情況就還好。
01—同環比的背景
首先聊聊,為啥要進行同環比的分析。
在我們做數據分析的時候,最常用的幾個分析套路,無非就是:做對比分析、做下鉆細分分析、做歸因溯源相關的分析等。
針對對比分析,最主要的就是和歷史進行比較了(除此之外,也可以和行業比較、和特定值比較等)。比如看歷史趨勢、比如用同比環比指標分析。

上圖是幾種不同的歷史對比方式,還是比較概括的。
歷史趨勢對比:即通過分析該指標在一定時間內的變化趨勢情況,分析指標走勢的異常與否;
動作前后對比:即通過分析某個特定動作之前和之后的指標情況,判斷該動作是否有效(比如營銷投放);
去年同期對比:分析本期與去年同期的數據差異情況,剔除周期因素從而判斷指標異常與否;
前一時期對比:分析本期與最相鄰的周期的差異。
其中第3、4種,就是同比和環比。
因此,同比和環比,主要是用于分析歷史對比情況的一種手段和方法。
02—同比與環比的定義
下面,我們看看同比環比的詳細定義。
(1)關于同比
【百度百科】同比一般情況下是本年第n月與去年第n月比。同比發展速度主要是為了消除季節變動的影響,用以說明本期發展水平與同期發展水平對比而達到的相對發展速度。在實際工作中,經常使用這個指標,如某年、某季、某月與同期對比計算的發展速度,就是同比發展速度。

這里有個重要的點:同比通常而言,都是針對和上一年進行比較的。
百科中提到,同比一般是第n月的比較。但實際上,也有自然日的同比、自然周的同比、季度的同比。季度的同比是用的比較多的。比如我們經常看的三季度GDP同比增長、CPI同比增長等等,都是按照季度來統計的。
但是,自然周、自然日的同比好像就比較少見了吧?為啥呢?
我們要回到【同比】這個指標的出發點上。同比的出發點,正如百科中所述,是為了消除周期性變動的影響。比如GDP的產量,每年可能是年初松,年末緊的狀態。為了看到真實的增長情況,采取同比的處理,能消除周期因素。

但是,能進行同比的前提是,兩個對比的周期要有可比性、一致性,這也是進行對比分析的起碼要求。總不能用今年1個月的銷量和去年1個周的銷量比較吧,沒有可比性。
而日同比、周同比,就容易出現沒有可比性的問題。比如21年11月28日是周日,而20年11月28日是周五,那其實就很難比較了,畢竟周末和工作日的行為還是有差距的。周同比也是一樣的問題,不再贅述。
另外還有一個重要的原因。如果看日同比、周同比,都是拿著一天、一周和去年比較,時間實在過于久遠。沒有太強的對比價值。除非是雙十一、618購物節這種單天比較大的行為,有看當天和去年當天比較的價值,否則很少這樣比較。那種感覺就像是拿著地球的一塊石頭和月球的一塊石頭比大小,實在太遠了……

因此,提到同比,往往是進行季度同比、月同比,很少有按日、按周進行同比的。
(2)關于環比
【百度百科】環比,統計學術語,是表示連續2個統計周期(比如連續兩月)內的量的變化比。

這里重要的點:環比是和上一周期比較的,而周期可以是年,也可以是日、周、月。
比如21年11月23日的環比,就是和21年11月22日比;21年第38周的環比,就是和21年37周比;21年8月環比,就是和21年7月比較。都是和同一個時間粒度的上一個周期進行比較。
關于同比和環比的基礎定義,就介紹這些。下面聊聊我之前關于同環比,踩過的坑,大家以我為鑒。
03—踩過的坑:同比定義有誤
先聊一個坑:對同比的定義理解有偏差。
上面講同比環比定義的時候,也提到了:同比通常來講,都是針對上一年的比較,而環比是基于上個周期(年、周、月等)的。這里就很容易混淆,把同比也搞成可以基于上個周期的前序周期比較。比如我。
在實踐的產品或者分析中,經常涉及的時間周期類別比較多:自然日、自然周、自然月、季度等。大家一定切記:【同比】一定是和上一年進行比較的。
有的朋友可能會關心:如果我就是想要和上個月同一天比較,該咋整呢?那就不要用【同比】這個概念了~咱們可以看看微信公眾平臺的后臺設計。

是的,直接不體現同比的概念了,直接【日】、【周】、【月】。這樣其實是很清晰的邏輯:分別是和昨天、7天前、上月同天,進行了比較。當然,僅限在按日統計的看板中,可以有以上的日周月對比,對于其他時間類型(比如周、月)就不能這樣呈現了。
看一個不好的設計案例:

上面的面板設計中,對于自然周、自然日也提供了同比的分析,且上面的自然日的同比是和上月同日進行比較的(這是錯的)。這導致同比的邏輯過于復雜以及混亂。并不便于理解以及洞察分析。
總之,給各位小伙伴的建議就是:若是針對月度、季度的分析,可以上同比的數據,針對自然日、自然周,就不要使用同比的概念了。這時可以使用上面微信公眾平臺的這種統計呈現邏輯。不然就會造成同比概念的誤用。
04—踩過的坑:細分人群的同比環比
關于同環比,還踩過一個坑:在分析細分人群的時候。
先說一下要分析的場景。比如公司想統計VIP人群在平臺的歷史成交金額走勢,該如何統計呢?

【方法一】先找出當前有哪些人群是VIP人群,然后把這群人歷史的所有成交篩選出來,最后基于時間維度進行匯總加和,即這群人的歷史成交金額走勢。
【方法二】先判斷第一天時VIP身份的人有哪些,統計這些人在這天的成交;然后判斷第二天時VIP身份的人有哪些,統計這些人在第二天的成交,以此類推。
應該用哪種邏輯呢?
很明顯,第二種邏輯更合理。因為如果用第一種邏輯,其實是基于最新的人群進行統計歷史,但極有可能現在的VIP用戶在歷史上還沒有成為VIP,因為這個身份是變化的。如果用最新的身份統計歷史,會造成歷史上他還沒有成為VIP的成交就納入了統計,很明顯,這不是我們想要分析的內容。
其實,如果歷史成交明細表中的用戶信息,添加了成交時用戶的級別信息的話,那這個問題就很好解決了。但現實是往往成交事實表中只保留了用戶ID信息,想要查用戶當時的狀態,需要基于ID查詢用戶表的歷史分區,以此還原當時的級別。關于事實表,可以參考上篇文章《維度建模:事實表與雪花模型》。
我呢,其實就犯了這個問題,用了第一種統計邏輯統計。這是不合理的。用這種邏輯去分析同比、環比,統統失去了意義。因為所分析的人群對象,并不是真實的目標群體。
因此給大家的建議就是:如果是要分析細分人群(比如某個級別的用戶,比如30歲以內的用戶,比如學生用戶等)的歷史數據,切記注意要沿用歷史狀態哦,因為他們的身份狀態會隨時間變化而變化~當然,有很多信息歷史和現在是不會變的,比如性別等。這種情況就還好。