一份給資料分析小白的指南

qing_yun發表於2022-06-02

隨著大資料時到的到來,把原始冰冷的資料轉化為有意義的見解成為了這個時代新的超能力。本文將帶你從最基礎的認識資料、到了解資料分析師的工作內容、需要的技術和軟技能、再到新手入職的tips、容易犯的錯誤和最後資料分析師的好習慣來展開。

引言

你有沒有每月記賬看自己各方面的花銷並對比計劃來調整花費?你有沒有每週收到手機推送的app使用時間報告並以此跟自己說要少花點時間在social media?你有沒有追蹤自己的體重或者BMI來判斷自己是不是又該運動了?如果你有,說明你已經在用資料幫你做決策,進行資料分析了。

什麼是資料?

資料的定義太廣泛了,但工作場景的含義通常是一個有行和列的表(table):每一行代表一條記錄(record/observation),每一列表示一個變數variable/指標metrics。

變數可以分為:數值型變數(numerical能進行加減乘除的計算的)和定性變數 (qualitative/categorical有有限的數量,比如性別,種族)。數值型變數又可以分為連續性變數和離散型變數(比如家裡幾口人,幾輛車)。定性變數中有一類序數變數(ordinal variable)內含了一定的程度和順序,比如你對客服滿意度的評級。

變數的分類

每個資料點有3個緯度值得關注:變數名,資料型別和資料值。資料型別在不同的資料庫軟體中有所不同,但大體上都可以分為:text/string,date and time, number, Boolean(0/1, True/False)。

什麼是資料分析師?

同一title下的資料分析師可以做著截然不同的事,這與行業、資料量大小、公司/組織大小,服務於誰都有關係。但總體來說,資料分析師需要通過對資料進行一系列推理、實驗、計算,來描述一個組織/過程的現狀、研究不同變數之間的關係、檢測異常指標、分析事件/行為的原因,甚至預測未來事件發展的趨勢(最後這條一般由需要建模的資料科學家來完成)。

備註:資料架構師(Data Architect)是那些處理資料儲存、資料使用、資料管理和在不同系統間整合的人,他們定義了資料的標準和準則。資料工程師(Data Engineer)是那些建資料庫或者和資料倉儲(data warehouse)打交道的人,他們負責各種各樣的資料清理和轉化,他們把處理好的資料給資料分析師和資料科學家使用,大公司或者職責劃分比較清晰的公司會有專門的資料工程師。而資料分析師就是拿著比較乾淨的資料進行進一步的操作,直到最後進行資料視覺化,產出有效的見解,幫助企業決策。

資料分析師需要的技能

通常需要的基本技能有Excel+SQL+用BI tools (Tableau,PowerBI等)進行資料視覺化做dashboard。再進階一步會需要統計學的知識會做假設檢驗來判斷一個campaign/test(實驗)是否有效。再進階會需要python/r的技能做一些資料檢驗、清理和資料轉化。再進階就需要行業知識,資料敏感性,這要靠經驗和大量的對行業的學習來積累。

備註:資料轉化:例如選取有用的資料列、用已有的資料進行計算並新增新的資料列等。

但成為一名資料分析師所需的技能絕不僅僅是會寫一些程式碼、用一些軟體那麼簡單,軟體/程式語言總在不斷更新換代,他們也只是解決問題的工具(比如計算一個商家的平均客單價可以用Excel,SQL,Python或者R任何一個工具來實現),但是以下軟技能是成為一名資料分析師一直需要而且不可或缺的能力:

·明白你要解決的問題,甚至能根據資料提出有價值的問題。

·找到並收集資料回答你的問題。如果你想知道我們有沒有達到發貨目標,那你就需要知道從我們收到訂單到發貨要多久,我們的目標是多久,然後從哪裡找訂單資料、發貨資料,我有沒有這些資料的許可權,我有多少資料,而又需要多少資料來回答這個問題。

  • 不是所有需要你解決問題的資料都在一個地方,有的可能來於Excel spreadsheet,其他部分在snowflake,還有一部分在MySQL,你要能夠整合所有資料幫助你最後的dashboard或者解決某一問題。

·明白你資料的質量,能檢查並發現資料的問題(如果有)。

  • 明白資料怎麼來的,是直接來於客戶還是我們內部進行了資料的處理,如果有了問題是客戶data source的問題還是我們資料清理/轉化過程的失誤

  • 備註:當你做報告的時候也要標註資料來源,因為這可以幫助你追溯出現問題的路徑。有時候系統升級或者資料在資料倉儲處理中,你作為end-user不知道這些情況,當你彙報時,但你的老闆(或者其他上級的人)更瞭解big picture,就可以很快的指出你的報告是否有問題,並幫你debug。

·明確哪些資料重要。你會被給到很多資料,但你要能找出解決某個問題特定的列/指標。

·能計算有效的指標。不是所有需要你解決問題的資料都已經存在在資料庫裡,你要學會用已有的資訊,計算你需要的資訊。

·用簡潔、容易理解的方式彙報你的結果。

  • 很重要的是明確你彙報成果的物件,如果是business people/領導級別的人,他們不想知道你如何一步步實現的結果、進行了哪些複雜的計算,他們就想你通過一些通俗易懂的視覺化圖表,看你對某一問題的結果/答案。

新手入職 Tips

先別急著上手做什麼專案,花一些時間看公司現在用哪些report做決策,學習已有的report,你還能從中學到一些行業/公司的基本準則/規則,比如某個指標的benchmark,呈現過去30天還是一年的資料,關注全國還是某個地區的資料等等。

在這個過程中,多問問自己做這樣一個report,我需要哪些資料,從來收集這些資料,你有沒有這些資料的許可權,問問同事他們找誰拿到的資料。

找一個容易上手的dashboard進行練習。

讀工作流程圖、一些資料處理/資料分析的手冊等。如果沒有這些東西,通過和同事的交流、請教,自己寫一份工作流程的documentation/workflow是一個很好的開始,不僅讓你梳理了工作的框架、明白不同表之間怎麼join,你也創造了超出分析資料本身的價值。

工作流程圖示例

新手常犯錯誤

1、沒有花足夠的時間理解資料。

任何人都可以搞一個pivot table或者進行一些計算,但你要有沒有注意資料間的關係,你做的事是不是解決了問題/符合目標?

2、沒有檢查重複值(duplicates)。

3、沒有做一些基本的求和,求平均值和計數的計算來看結果是不是符合邏輯,比如product table有產品單價,order table有sales amount,那sales amount除以quantity sold 是否和unit price一致。

4、沒有記錄你要解決的問題和答案。

這幫助你不問重複的問題,以後有問題也有文件可循。

5、沒有用其他的方法驗證你的資料結果。

每個人都可以展示一個數並讓他看起來很正確,更要命的是邏輯上的錯誤不會有報錯提醒。

6、因為害怕不問問題。

人們總是提供你他們覺得你需要的requirement,但這並不總是和你需要的一致。

問有價值的問題高效地完成你的工作也是一種能力,有價值的問題包括業務方給你提供一個訴求,你發現一些東西需要更清楚的闡述,或者考慮到這個訴求的目標提出的一些concern,去尋求confirmation。

7、不問是否已有文件記錄/解決了相關的問題,如果有,你可以更高效更聰明的工作,而不是傻幹傻琢磨。

資料分析師的好習慣

1、如果你不知道答案,不要猜或者編一個結果。

決策者是要拿你說的話做決策的,不確定的時候明確告訴對方你需要再核實一下或者查到結果後再給ta update。

2、除了自己檢驗自己的資料分析過程,peer review也是很好的方法,越是有經驗的資料分析師越會支援鼓勵你多花一點時間做peer review保證結果的正確性,他們這麼做並不是擔心你能力不夠。

3、開會要做好準備,有效利用時間。

就我個人而言,不管是別人invite我的meeting還是我自己organize的meeting,我都會準備一個list,前者我會準備要問的問題,後者我會寫會議的流程。

4、每個人都很忙,好不容易找人問到了你的問題,記得take notes。

5、presentation之前提供上下文/專案背景,幫助聽眾更好的理解你的演講內容。

具體包括標註資料出處、定義名詞或術語、需要他們從資料中得到的資訊。

6、給別人發資料的時候建一個readme文件,標註資料出處、你做了哪些資料清理和轉化,如果需要再加一個資料字典:解釋列名和一些針對資料的注意事項。

來自 “ 一個資料人的自留地 ”, 原文作者:@Claire;原文連結:https://mp.weixin.qq.com/s/4HN2sZ7lSQ6ITxrzPZ3Z_w,如有侵權,請聯絡管理員刪除。

相關文章