讓你能進“大廠”的數(shù)據(jù)分析項目是長怎樣的?
微信搜索「Dathon數(shù)據(jù)分析」關(guān)注后,在后臺回復「亮眼項目」即可免費獲取本文提到的項目技能棧與學習路徑。
也可以截圖后,微信掃碼關(guān)注后回復「亮眼項目」
文字版
暫時看不到視頻的同學看這里:
一、自我介紹
大家好,我是小匿。
今天我們來聊聊“能讓你脫穎而出的數(shù)據(jù)分析項目是怎么樣的”
在分享之前,我先做個簡短的自我介紹。我是16年畢業(yè)于某廣東獨立院校財務(wù)管理專業(yè),畢業(yè)后從事了1年的會計工作,期間逐漸對此行業(yè)感到失望。于17年2月裸辭學習數(shù)據(jù)分析相關(guān)的知識,在17年8月轉(zhuǎn)行至數(shù)據(jù)分析師,在這小公司里繼續(xù)打磨基礎(chǔ),并將數(shù)據(jù)分析及算法的知識運用到真實的工作項目中。以及期間參與了接近10個算法比賽,并取得了一定名次。在18年12月,加入廣州某知名互聯(lián)網(wǎng)企業(yè),從事數(shù)據(jù)分析師職。2020年4月,在某機遇下,成功轉(zhuǎn)崗至數(shù)據(jù)挖掘工程師。
在數(shù)據(jù)道路上不斷前進的這4年,讓我確立了自身的數(shù)據(jù)目標:”專注數(shù)據(jù)為業(yè)務(wù)賦能,不局限于方式“。未來,我會在數(shù)據(jù)道路上繼續(xù)奔跑,我相信技術(shù)和業(yè)務(wù)的結(jié)合,為日漸復雜的需求場景提供自動化&智能化的解決方案才是數(shù)據(jù)分析師該有的樣子。

二、背景
我們應(yīng)該都了解,數(shù)據(jù)分析項目是我們向面試官展示我們數(shù)據(jù)分析技能的最好載體,一個好的項目絕對能夠增大我們拿到offer的可能性。最脫穎而出的項目,當然是在大廠的高業(yè)務(wù)價值的項目,這點毋庸置疑,但在這類項目一般可遇不可求。今天我想講解的是在脫離這個背景下,我們的個人項目應(yīng)該怎么做呢?
我有時也會作為面試官,或者幫一些微信好友看簡歷,我真得很難很難能在簡歷里看到一個讓我“眼睛一亮”的數(shù)據(jù)分析項目,大多項目真得十分大眾,基本是同一個模式,我舉幾個網(wǎng)紅項目。
淘寶用戶行為分析
母嬰商品銷售數(shù)據(jù)分析
共享單車數(shù)據(jù)分析
NBA球員數(shù)據(jù)分析
這些項目的形式全部都是:jupyter notebook + python數(shù)據(jù)處理代碼 + 數(shù)據(jù)可視化 + 分析結(jié)論 = 數(shù)據(jù)分析報告

這種形式的項目也不能差,我剛轉(zhuǎn)行的時候也是類似這樣的項目。
但實在是太大眾了,可以說人手幾份,我作為面試官,10個有9個面試者都是這種模式,是挺膩的。我很想告訴大家,我們數(shù)據(jù)分析師能輸出的數(shù)據(jù)產(chǎn)品真得不是只有“數(shù)據(jù)分析報告”,我們能做的還有不少。那擁有怎樣特性的項目才能稱之為“”脫穎而出“呢?
我認為有以下幾點:
1、非單一的數(shù)據(jù)分析報告
2、不僅有能體現(xiàn)業(yè)務(wù)價值也有技術(shù)價值
3、整個項目能實現(xiàn)自動化甚至是智能化
這里我將介紹兩個我做的我認為能夠”脫穎而出“的數(shù)據(jù)分析項目。
三、項目1:結(jié)合用戶畫像從0到1大家一個公司級別的BI系統(tǒng)
任何項目我們都先得明確背景和目的(價值)
項目背景:運營商旗下某業(yè)務(wù)發(fā)展已經(jīng)進入成熟期,某省份市場趨于飽和,新增用戶有限,因此存量用戶的保有尤為重要,目前業(yè)務(wù)月均退訂用戶數(shù)達30000+個,流失情況嚴重,已較大程度影響業(yè)務(wù)發(fā)展與收入。
項目目的:1、弄清楚流失用戶在各時間段長什么樣(用戶畫像)。2、通過構(gòu)建流失用戶畫像,找出可識別流失用戶的重要特征,為減少運營商旗下某業(yè)務(wù)的用戶保有工作成本提供依據(jù)。
針對此背景與價值,以及鑒于一些中小廠看數(shù)據(jù)仍在互傳PPT或圖片的情況下,我覺得搭建一個公司級別的BI系統(tǒng)是明智之選!
現(xiàn)在我們就構(gòu)思一下我們需要實現(xiàn)哪些功能點:
BI工具的功能點:
1、這個BI工具是網(wǎng)頁形式的,并且能適配PC端+移動端(手機與平板),也能用電視大屏做一屏展示。只要有權(quán)限的人都能很方便的登錄查看。
2、這個BI工具是有強大的數(shù)據(jù)可視化能力的,有權(quán)限的人都能夠去配圖。
3、要有用戶權(quán)限系統(tǒng),有些數(shù)據(jù)只能Boss看,有些數(shù)據(jù)只能給某團隊編輯,這些都需要適配。
4、要有Dashboard管理系統(tǒng),以免建立太多而混亂。
5、要能接入各種數(shù)據(jù)源,常規(guī)的mysql,及目前比較火的clickhouse最好都要能接入。
6、要有告警功能,當核心指標異常時,它能自動的用釘釘或企業(yè)微信或郵件進行指標告警。
7、要有版本控制功能,當有同學不小心錯誤保存了,能夠回滾版本。
流失用戶畫像儀表盤功能:
1、搭建流失用戶畫像儀表盤總覽,我需要一目了然的看到某段時間的流失用戶”長怎樣!“
2、除了總覽,我想根據(jù)各屬性特征各自建立儀表盤,進行多維度下鉆分析與配圖,更細致的了解數(shù)據(jù)全貌。
3、所有的時間趨勢圖我需要配上“環(huán)比”功能,清晰目前變化情況。
4、各下鉆分析儀表盤都需要有分析結(jié)論。
5、要有明細數(shù)據(jù)下載功能。
其他周邊功能:
主要是ETL
可能有些同學,尤其是數(shù)據(jù)分析師看到這些功能點就慌了,我完全不會前后端啊,怎么可能搭建一個如此完整的BI系統(tǒng)呢?別慌!我介紹一個開源免費極易安裝的BI工具給你!- Grafana。
以上所說的功能點它通通都有!完全不需要你在自行開發(fā)!它甚至還有N多插件支持,舉個例子,echarts也是它們插件之一,這意味著你能配出99%的圖表!最后我要再次強調(diào)一下,它是開源免費的!現(xiàn)在外面完整的BI系統(tǒng)一般每年需要幾萬/幾十萬甚至上百萬,如果你能用這個工具為公司搭建,你每年能為公司省下這批成本,你還怕不升職加薪?

OK,我們功能點基本列好了,那我建議大家每個求職項目都應(yīng)該畫一個架構(gòu)圖或流程圖(兩者都畫也行)。那我們本項目架構(gòu)圖如下:
數(shù)據(jù)層:我們本次核心用mysql存儲,但有一些是別的系統(tǒng)下載的csv,所以這層我們都做轉(zhuǎn)換。
數(shù)據(jù)預(yù)處理層:我們需要對數(shù)據(jù)缺失值、異常值、無效值進行數(shù)據(jù)清洗;來自數(shù)據(jù)庫里的多個數(shù)據(jù)表進行合并;基于業(yè)務(wù)理解構(gòu)建用戶畫像新特征;對時間戳及地理位置數(shù)據(jù)進行轉(zhuǎn)換;最終我們將以上操作基于python做成自動化的腳本,利用計劃任務(wù)管理器(或linux crontab)每天定時進行數(shù)據(jù)調(diào)度。
數(shù)據(jù)分析與展示層:采用“總分”儀表盤設(shè)計形式,并依據(jù)業(yè)務(wù)形態(tài)細分為教育、身份、通信、消費等四大特征。稍后會直接展示。
應(yīng)用層:客戶可以用各終端觀看Grafana BI系統(tǒng),而異常指標告警我們可以通過企業(yè)微信/釘釘/郵件進行接收。

來看看項目實際部分截圖:




四、項目2:核心指標智能數(shù)據(jù)監(jiān)控日報
項目背景:我們數(shù)據(jù)分析師都會遇到這個問題,核心Kpi指標異常了我們怎么分析?傳統(tǒng)的分析手段是人工不斷的下鉆分析,如下圖所示。
當某時間段流失率出現(xiàn)異常時,我們基于業(yè)務(wù)理解篩選出最可能的維度省份、運營商、平臺,基于這三個維度繼續(xù)進行下鉆分析。從省份看各省份流失率均上升,所以該維度不會是異常根因。從運營商角度能明顯發(fā)現(xiàn)“電信"的突增,平臺能明顯的發(fā)現(xiàn)ios的突增。我們進一步分析這兩個維度的組合,最終能確定為”運營商=電信&平臺=ios“為根因。
這是傳統(tǒng)的下鉆分析方式,你有沒有想過這整個過程是能夠自動&智能化的?以下這個項目就告訴你!
項目價值:本項目對數(shù)據(jù)分析思維、智能算法、Python工程能力三者進行科學結(jié)合。構(gòu)建智能數(shù)據(jù)監(jiān)控日報系統(tǒng),及時掌握核心指標最新情況,并當核心指標出現(xiàn)異常時,算法智能分析出其原因。與傳統(tǒng)手工日報、人工下鉆分析相比,大大提高了工作效率。并為業(yè)務(wù)不斷迭代優(yōu)化提供智能化的支撐。

構(gòu)建項目流程圖:
1、利用任務(wù)計劃調(diào)度器每日定時調(diào)度python腳本
2、利用pymysql庫與mysql交互,并做常規(guī)數(shù)據(jù)清洗
3、利用時間序列異常檢測算法判斷核當天核心指標是否異常
4、若沒有存在異常,我們對核心維度進行下鉆分析,并用pyecharts庫進行數(shù)據(jù)可視化
5、利用html+css制作郵件主要內(nèi)容,并用stmp&email庫進行封裝,最終輸出核心KPI監(jiān)控日報
6、但若存在異常,則我們接入根因定位算法,自動&智能的分析異常根因
7、在輸出核心KPI監(jiān)控日報同時,也輸出智能根因定位日報

本項目的最大亮點是時序異常檢測與根因定位算法。
時序異常檢測算法方面,和時序預(yù)測其實有一定相似,比如arima、prophet、lstm都是可選擇的算法。
根因定位算法方面,目前比較知名的hotspot、squeeeze、adtributor、idice等都可選擇。
來看看項目實際部分截圖:


五、小總結(jié)
本視頻的初衷就是前面所說的,真得很難看到亮眼的數(shù)據(jù)分析項目,網(wǎng)上的數(shù)據(jù)分析項目基本是單一數(shù)據(jù)分析報告,我覺得數(shù)據(jù)分析師能做的遠不止這些,技術(shù)與業(yè)務(wù)的結(jié)合,開發(fā)出有價值的數(shù)據(jù)產(chǎn)品!
不覺得這樣的數(shù)據(jù)分析師比起單純的取數(shù)做報告有趣多了么!不知道是否有數(shù)分的同學覺得你這兩個項目不是應(yīng)該算法工程師或數(shù)據(jù)開發(fā)來做嗎?為啥我們數(shù)據(jù)分析師要做這些。對于這個問題我只想答,不要讓title給你自己貼了標簽,算法和工程都可以成為我們的工具,我的座右銘“專注數(shù)據(jù)為業(yè)務(wù)賦能,不局限于方式”與大家共勉。
以上這些也僅僅個人觀點,可能會有些片面,也算是一次拋磚引玉,期待有更多同學分享交流。
微信搜索「Dathon數(shù)據(jù)分析」關(guān)注后,在后臺回復「亮眼項目」即可免費獲取本文提到的項目技能棧與學習路徑。
也可以截圖后,微信掃碼關(guān)注后回復「亮眼項目」
創(chuàng)作不易,求個在看,感謝!
