優秀的數據分析師需要具備這樣一些素質:有扎實的 SQL 基礎,熟練使用 Excel,有統計學 基礎,至少掌握一門數據挖掘語言(R、SAS、Python、SPSS),有良好的溝通和表達能力,做好 不斷學習的準備,有較強的數據敏感度和邏輯思維能力,深入了解業務,有管理者思維,能站在 管理者的角度考慮問題。
首先,要打好扎實的 SQL 基礎。
SQL 基礎之所以重要,是因為數據分析師分析的數據大多都是從數據庫中提取而來的。有良好的 SQL 功底并能熟悉使用,不僅能提取到需要的數據,還能大大提高工作效率。盡管有部分數 據可以通過報表等其他途徑獲得,但絕大多數的數據仍需要通過自己寫 SQL 語句。對于一些需要 深入分析用戶行為的數據,用 SQL 提取數據的時間可能會占據整個數據分析過程的 50%,甚至 80%,而對于未開發成數據報表的常用數據需求,比如游戲封測、開測期間的日報和周報,則需 要編寫大量的 SQL 語句來查詢相應數據,這時如果熟悉存儲過程,能夠自動化或半自動化地實現 日常數據收集,就會事半功倍了。
目前使用較多的數據庫有 MySQL、SQL Server 和 Oracle,數據分析師必須掌握的常用語句和函數有如下幾種。
(1)合計和標量函數:Count()、Max()、Sum()、Upper()、lower()、Round()等。
(2)distinct——distinct 關鍵字可以過濾重復的數據記錄。
(3)Top——結合 select 語句,Top 函數可以查詢頭幾條和末幾條的數據記錄(僅限 SQL Server, 在其他數據庫,可用 limit 語句、rownum 列等方式實現相似的目的)。
(4)Order By——結合 select語句,Order By 可以讓查詢結果按某個字段正序和逆序排列。
(5)Group By——Group By 子句可以對查詢的結果集按指定字段分組。
(6)Group By & Having 子句——Having 語句基于 Group By,定義分組條件。
(7)Inner Join,Left Outer Join,Right Outer Join and Full outer Join——多表的列關聯,即通過 Join 可以將不同物理表中的數據列根據一定的關聯條件合并成一個結果集。
(8)Union 合并查詢:Union/Union ALL 查詢可以把多張表的數據行合并起來,Union 在合并 時重復的數據僅保留一行,而 Union ALL 則是直接合并,不會處理重復行。 在大數據時代,有很多查詢工具可供選擇。Hive 和 SQL 是目前比較主流的工具。Hive 是基 于 Hadoop 的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,并提供完整的 SQL 查詢功能,可以將 SQL 語句轉換為 MapReduce 任務進行運行。Hive 和 SQL 是非常相似的, 主要的區別就是 Hive 缺少更新和刪除功能。如果你可以熟練使用 SQL,就可以平穩過渡到 Hive。 另外,一定要注意兩者在結構和語法上的差異。
其次,要熟練使用 Excel。
Excel 可以進行各種數據的處理、統計分析和輔助決策操作,作為常用的數據處理和展現工 具,數據分析師除了要熟練將數據用 Excel 中的圖表展現出來,還需要掌握為生成的圖表做一系 列的格式設置的方法,如:系列格式美化、三維格式美化,以及坐標軸和網格線設置等,圖表可 以與函數或宏等功能一起聯用,制作出模擬圖表或帶有交互效果的高級圖表,比如在中國地圖上標注各省的人口分布等,實現這些能得到更好地數據分析和查看效果。Excel 里面自帶的數據分析 功能,很大程度上能完成專業統計軟件(R、SPSS、SAS、Matlab)的數據分析工作,這其中包括 描述性統計、相關系數、概率分布、均值推斷、線性、非線性回歸、多元回歸分析、時間序列等 內容。熟悉使用 Excel 的各項功能對一名優秀的數據分析師來說非常重要。
再次,要有統計學基礎。
統計學是收集、處理、分析、解釋數據并從數據中得出結論的科學,其中的理論及依據就是 數據分析的理論和依據。統計學是數據分析的理論基礎,可以使數據分析更加系統化,以系統的 數據科學作為數據分析的指導,才會更好地為數據分析服務。沒有統計學基礎的分析師的職業發 展之路不會長遠,因為其在工作中可能會常常遇到不知道該用什么方法找尋數據規律的瓶頸,因 此掌握數據分析的統計學基礎知識是成為一名優秀數據分析師的基礎,這也是在招聘數據分析師 崗位時要求應聘者具有統計學知識的原因。當然,如果不是統計或數學專業,分析師還可以通過 自學統計學相關書籍的方法學習。
統計學知識主要包含:用于集中趨勢分析的平均數、中數、眾數;用于離中趨勢分析的全距、 四分差、平均差、方差、標準差;研究現象之間是否存在某種依存關系的相關分析;確定兩種或 兩種以上變數間相互依賴的定量關系的回歸分析;揭示同一個變量的各個類別之間的差異,以及 不同變量各個類別之間的對應關系的關聯分析、R-Q 型因子分析;研究從變量群中提取共性因子 的因子分析;用于兩個及以上樣本均數差別的顯著性檢驗的方差分析;概率及分布、參數估計、 假設檢驗等經典統計學內容。
最后,至少熟悉并精通一種數據挖掘工具和語言。
以 R 語言為例,R 編程語言在數據分析與機器學習領域已經成為一款重要的工具。R 作為腳 本語言憑借其良好的互動性和豐富的擴展包資源可以方便地解決大部分數據處理、變換、統計分 析、可視化的問題,并可以重現所有的細節。R 的優勢在于有包羅萬象的統計函數可以調用,特 別是在時間序列分析方面(在游戲行業也有很好的應用),無論是經典還是前沿的方法都有相應的 包可以直接使用。因此,掌握 R 語言可以提高整體的生產力。然而,要成為一名優秀的數據分析 師,僅學會使用一門語言遠遠不夠,還需要修改數據挖掘語言的程序包或模型,因為現有的程序 包或模型有局限性,在前期數據處理上還是不夠自由,如異常值的處理、變量處理等,而自己寫 代碼編程也可以根據自己的需求進行編寫,實現更多的個性化需求。
一名優秀的數據分析師,還應該主動熟悉業務。
以游戲公司為例,如果不熟悉游戲產品制作流程、系統架構、基本運營思路,不知道游戲玩家的基本游戲行為和情感訴求,那么數據分析工作就相當于空中樓閣,所以要多了解策劃人員的 游戲設計理念、運營人員的版本計劃,抓住一切機會多觀察和學習其工作思路和方法,并參與其 具體的實施過程,這樣才能逐步積累真正的游戲業務經驗。現實情況中很多游戲數據分析師都沒有這樣的經歷,也就沒有相關的經驗積累,所以他們大多數的工作產出主要是一些非產品相關的 平臺數據分析內容和結論;當然,筆者相信并非他們不愿意去積累,而是受限于企業中的一些機 制,比如大多數游戲數據分析師是在技術部門或平臺部門,而非具體的產品部門,少有切實深入 到業務現場的機會。在這種環境下,更需要自己主動去了解業務,多玩游戲,多主動和產品部門 聯系,若脫離行業認知和游戲業務背景,即使有很好的統計學功底,分析的結果也往往只能停留 在數據解讀層面,甚至出現因為不了解業務背景而使結論錯誤的情況。從另外一個角度來說,懂 業務也是數據敏感的體現,不懂業務的數據分析師,看到的只是一個數字。反之,懂業務的數據 分析師,則看到的不僅僅是數字,他明白這個數字代表什么意義,更能針對數據分析結論提出有 針對性的建議,對產品或者企業來說都是非常有價值的。
懂游戲業務是做游戲數據分析師的基本要求,這種觀點不僅適用于游戲行業,對任何其他行業也是一樣的道理。優秀的分析師不僅要懂業務,而且要非常熟悉業務。
撰寫報告的能力對成為一名優秀的分析師來說也非常重要。
即便有嚴謹的分析思路和有價值的數據資料,如果不能將其寫成報告,或者寫的報告未能準確清楚地表達出數據中隱含的規律,那數據的價值將大打折扣。一份好的分析報告,數據資料是 功底,報告的框架是支柱,報告的格式是軍裝,獨特見解是亮點,預測方法是刀槍,正確的判斷 是見證。在撰寫報告時,深入地思考,深入分析,邏輯嚴謹,結論有說服力,能提前預測數據趨 勢,能從問題中引申出解決方案,提出有指導意義的分析建議,這些都是一名優秀的分析師所體 現的特質。
除了以上的硬實力,數據敏感力、邏輯思維能力、歸納能力、批判性思維能力、交流溝通能力、責任力這些軟性的技能也是優秀分析師必須具備的素質。另外,如果分析師能站在更高的角 度思考問題,有管理者的思維,則能在眾多分析師中能脫穎而出。
以上有些素質是我們在入職場之前就具備的,而有些則需要進入行業環境后逐步積累和建立。 成為優秀的數據分析師需要具備過硬的業務素養和技術能力,這絕非一朝一夕之功,需要在實踐 中不斷成長和升華。一個優秀的數據分析師應該以數據價值為導向,放眼全局、立足業務、善于 溝通,認真對待每一次的數據分析工作,在工作中快速成長。