天天看點

轉行資料分析之前,希望你能看看這篇『長文+幹貨』

轉行資料分析之前,希望你能看看這篇『長文+幹貨』

2020,努力做一個無可替代的人!

長文預警,全篇無代碼,隻講小一我在資料分析之路上的心得收獲

前言

最近有朋友問了小一一些關于轉行和入門的問題,問題大概是這樣:

“我想學習資料分析,不知道該從哪開始學,小一你可以帶我嗎?”

“零基礎,想學習資料分析,有好的經驗可以分享嗎?”

在總結大家問題的時候,我不禁想到了兩三年前的自己。

那會兒,小一我也剛步入社會沒多久,自己會的專業技能全是為背景開發準備的。

到了部門之後,因為日常工作更偏資料分析,是以我當時也面臨和大家同樣的問題。疑惑、迷茫、有力使不出來的感覺。

說到這,我的眼角似乎又濕了一片......

現在再來看當時遇到的問題,就有了下面的文章。

文章很長,我真沒想到會寫這麼多内容,寫着寫着就......

可能是自己的踩坑經曆太豐富了,一提起就一發不可收拾。

文章雖長,但重點我都有标注,排版也還算可以,希望能讓你有所得,有所獲。

何為資料分析?

資料分析這個詞,這個職業其實很久就已經出現,隻是在資料量越來越大的今天它的地位也越來越重要,才會引起大家的關注。

但我還是建議你将這幾個詞一起來看:資料分析、資料挖掘、人工智能和資料科學。

真的會有人分不清楚這幾個職位,而且在實際工作中,跨領域幹活的事情更不在少數。

資料分析

先從最簡單的開始說起

從它的字面意思來看:資料分析=資料+分析

首先你得有擷取資料的能力,當你的分析需要某些資料來進行支撐驗證的時候,你得知道這些資料從哪擷取,怎麼擷取

這個擷取說的可不簡單指的是從某個網站下載下傳,從某魚某寶上買;更多指的是你具備這種資料擷取的能力,具備對分析需要的資料類型的判斷。

說到這,你可能要反駁我了:項目進度當然是越快越好,隻要能搞到項目所需的資料就行了呗。

你如果能確定你以後項目中需要的資料你都可以通過捷徑搞到手,那沒問題。可問題是,大多數同學可以嗎?

我曾經因為工作需要爬一批微網誌的資料,淘寶要價300+,一次性的不包售後。

後來我在網上找的代碼,自己修修補補之後搞定了資料需求,後來上司知道這事發了300獎金給我。

上司好是一個方面,若你将這件事情放在任何一個環境下,你具備這個能力,别的同僚不具備,在做項目的時候上司會怎麼對待你?

别跟我提什麼能者多勞的事情,現在的上司都不傻,卸磨殺驢這種事情不是人人都願意去做的。

說完資料我們再來看分析

你要說分析重不重要,小一覺得相當重要!

通過觀察資料提出假設是分析,通過資料名額驗證假設是否成立是分析,通過資料規律進行預測也是分析。

分析是對資料的觀察利用,驗證現有的資料結論,并提出合理的假設預測未來趨勢。當然,這個合理程度和業務有很大關系,我們後面會說到。

總的來說:資料分析的目的是解決問題,通過資料驗證我們提出的假設,并根據資料規律做出相應的預測規劃。

多說一句:對于某些招聘網站上要求資料分析師具備熟悉xxx算法,掌握xxx模型的能力,我隻勸你一句,若你具備它所說的能力,往下翻,把你的定位放在下面兩個,你值得更好的。

資料挖掘

這個話題我說不了多少,資曆不夠我還是知道的,如果有些地方您覺得我說的不對,您就當我在瞎瘠薄說。

直接說說它和上面一個的差別吧。

如果說資料分析最後會對資料規律進行預測分析,那隻能說這種預測,是很有限的。

但是資料挖掘不一樣,有數學理論支撐,有大量資料集進行驗證,準确率和信服度還是挺高的。

要說和資料分析最大的差別,那肯定就是各自的目的了。

資料挖掘的目的是通過大量資料樣本,挖掘資料之間的内在關聯,預測未來時間的資料變化。

最明顯的差別就是資料分析更注重已知資訊的分析,資料挖掘更注重未知資訊的挖掘

如果說你現在是一個資料分析師,或者準備轉行做資料分析師,那我建議你最好能夠将你的目标定位放在這,資料挖掘上。

資料挖掘可以轉資料分析,但是資料分析不一定能轉資料挖掘。當然也沒有資料挖掘師這麼傻去轉資料分析。

人工智能

這個話題就泛泛而談了

就目前社會的科技發展來看,人工智能的前景很大。

基本上語音識别、圖像識别、機器人、自然語言處理、智能搜尋這些領域都屬于人工智能。

但是記住一點:人工智能必須具備資料挖掘能力,其次是機器學習、深度學習這些你也得會。

這裡又提到了兩個方向:機器學習和深度學習。不了解的話你暫且就把它當成另一個資料挖掘來看。

資料科學

最後是資料科學,這個詞,聽着好像很高大上,其實人家本來就很高大上啦。

對于這個學科我建議你這樣了解:

Python 中有一個包叫Pandas,是專門進行資料處理的

同樣,還有這樣一個包叫Scikit-learn,是進行資料挖掘的

還有像爬蟲、可視化Seaborn|matplotlib、線性代數scipy、深度學習keras 等等這樣的包,資料科學都涵蓋進去了。

ok,資料科學就是一個涵蓋資料處理、可視化、資料挖掘、深度學習等這些内容的

學科

,了解就好。

資料分析的流程是什麼?

想必對很多同學,尤其是還在學校的同學來說,會對這個問題比較感興趣。

那麼在實際工作中,一個資料分析項目,它的實作流程究竟是怎樣的?

小一我翻了下這兩三年自己在工作中遇到的大小項目,并且和同僚進行了充分的交流,差不多總結了六個步驟。

分析業務名額,明确資料内容

很驚訝吧,第一個竟然是這個。

在實際遇到一個項目的時候,往往上司給你的任務,是一個大的目标,比如:

上司:小一啊,我們這個月比上個月的使用者投訴略有增多,你來分析一下是什麼原因,順便預測一下下個月我們應該重點抓哪些名額“

像這種,就需要先了解具體業務了

使用者為什麼會投訴?産品哪裡做的讓使用者不滿意?使用者不滿意的具體資料有哪些?這些資料是怎麼生成的?不同粒度的資料又表示什麼?

另外别忘了老闆的終極目标(xxx,這是順便一下就能預測出來的嗎......)

提出問題假設,建立分析方法

當你已經知道你的目标和哪些資料有關系,卻不能确定哪個是主要問題,哪個是次要的時候,你就到了第二階段。

如果你時間允許的話,我建議你可以建立對照組進行對照試驗。

比如上面的問題,你就可以假設使用者投訴和資費太貴有關、和産品品質有關系、和售後服務有關系等

另外,如果你有曆史的投訴資料,你也可以提出基于時間次元的假設:不同月份受天氣影響太大,造成使用者投訴(如果你真的把原因歸結為天氣,希望你不會挨老闆毒打吧)

利用采集工具,擷取相關資料

你已經提出了問題,也知道你的問題會和哪些資料有關聯,這個時候你需要資料,需要盡可能多的資料去驗證你的結論,讓你的結論更有信服力,能被老闆接受。

一般在大公司裡面,會有專門的人負責對接取數這個活,你隻需要提需求就完事了。

在小公司裡面,往往你就是自己的主宰。

想要資料?自己去取。

資料不夠?自己去找。

我找不到?您真厲害(要你何用)

你可以通過一些資料采集工具或者自己寫爬蟲腳本。

這裡,小一的經驗是:

如果你資料量很小,就幾百幾千條那種,爬蟲就沒必要了,找一個八爪魚或者火車頭這類的采集工具,效率很高。

如果你資料量略大,需要定時擷取那建議你學習一下Python 爬蟲

“不會Python,不會爬蟲怎麼辦?”

“往下看,後面有你想要的!”

通過程式設計手段,實作資料清洗

在你的一波極限操作(差點被辭退)之下,你終于拿到了想要的資料。

仔細一看,監控系統每小時儲存一個記錄檔案,上個月一共30*24個檔案,檔案也不大,就幾MB的樣子,但頂不住它量大啊。

咋辦?

是以在這一步,掌握至少一門程式設計語言是基本要求。R、Python都可,推薦後者,後面會細說

在資料清洗的過程中,你需要面對這些問題:

缺失值處理、異常值處理、重複值處理,還有系統偶爾抽風後儲存的垃圾資料。

提取有用資訊,進行資料分析

現在萬事俱備,終于到你熟悉的領域了。

你利用基本的統計學方法進行資料統計,分析每一個名額的資料分布,對比上月的資料你還計算了不同名額的環比情況。

你找到了反映使用者投訴的具體名額,确實是這個月這些名額波動比較大影響的,然後你又通過對比不同年份同時期的資料去證明你的結果。

最後,你利用資料分析軟體建立了一個簡單的預測模型,通過曆年資料預測這個月的名額,結果發現相差不大。

受此鼓舞的你又通過模型預測了下個月的名額情況,信心滿滿。

合理資料展現,輸出分析報告

當你一籌莫展不知道怎麼寫你的分析報告時,你的同僚給你發來了“xxxx資料分析報告模闆”。

當你看完模闆你知道寫報告需要這些:圖表展示+資料論證+結果預測

你原想着長篇大論說一通,最後卻被你精煉到了五六頁PPT 上

由于同僚模闆助攻的到位,你隻需要換幾張圖貼一些資料表,然後将最初的目标原因解釋清楚,形成一個稍有信服力的結論

最後附上你預測的結果,來一段合理又不偏頗的建議,你的報告就搞定了。

如何入門資料分析?

流程說完了,還是得來點實際的幹貨,不然又被你們說我水文章了。

這部分主要介紹:如何入門+學習方法

1. 确定自己的方向

在資料分析中,有這樣兩種類型:偏業務型的數分和偏技術型的數分。

偏業務型的我不太好說,因為我不是業務出身。我了解的偏業務型更多的是在和市場的人打交道,針對市場的促銷活動分析使用者痛點,提供有價值的分析結果?(是問号,我沒打錯)

針對營運的周、月、季度、年名額進行輸入輸出,完美闡釋了“我們不生産資料,我們隻是資料的搬運工”這句話。

偏技術型的大多都呆不久,哈哈,開個玩笑。

偏技術的會注意各種名額之間的關聯,根據業務的情況相應的進行名額優化,預測業務的相應名額。

是以,偏技術型的資料分析最後幹着幹着就成了一名資料挖掘工程師,自然演變吧。

偏業務型的更容易入門,多了解名額看看業務相關,剩下的就是水到渠成的事情。偏技術的就需要你自己不斷的學習,提高自己,尤其是算法模型,沒那麼簡單入門。

2. 提高自己的能力

前面說的有點誇大,你也不必太緊張。資料分析這能力,有很多種途徑去提升。

下面我列一下能力階梯,想要入門的同學可以一級一級往上提升自己。

2.1 業務能力

不多介紹,看個人能力。短則一兩周,長則一兩個月。

業務相關的,就那麼點資料,名額的含義都是早都确定好了的。能舉一反三,将一個大目标分解成具體的小名額上,或将小名額确定到具體資料上去,業務能力就ok了。

2.2 Excel 相關

很多同學不把它當回事,不當回事的我暫且認為你還是學生,但凡開始工作已經接觸到資料的人,你敢說你真的會用Excel 嗎?

Excel 永遠是資料處理的一大利器,這不僅展現在它對資料進行各種統計彙總的操作上,還展現在它的圖表輸出上。

相信也有很多同學通過Python 處理完資料之後,還會去用Excel 畫圖。

當你的資料量小(以100萬行為界限),資料處理簡單,資料表唯一的情況下,建議你直接用Excel,快速、友善,輸出簡單。

在老闆眼中,可以用Excel 搞定的分析任務分分鐘就能出結果!

2.3 Python/R

前面已經說過為什麼要掌握一門程式設計語言,那在這就來說說怎麼簡單快速入門一門程式設計語言

我們都知道,有目的性的去學習是事半功倍的,程式設計也是

這裡我們學程式設計進行數分的目的就是進行資料清洗、統計預測之類的,那肯定會有這樣一個流程:

讀資料—清洗資料—分析資料—圖表分析—關聯預測—儲存資料。

讀資料:肯定和檔案操作有關,學習檔案相關内容

清洗資料:先判斷所有不合理資料,在删除或填充,是以和判斷、循環有關,學習分支相關内容

統計分析:通過數學方法彙總名額,和方法有關,學習函數、數學子產品相關内容

圖表分析:通過制作圖表進行更深層次的次元分析,學習可視化的相關内容

關聯預測:通過的3、4兩步進行合理的關聯預測,需要學習相應的簡單算法,以及代碼的實作應用(加分項)

儲存資料:儲存到檔案或者資料庫,學習資料庫相關内容

這一個流程下來,程式設計的相關文法就差不多也學完了,為了提高處理效率在學習下程序線程相關、資料處理高階子產品相關,基本上你的程式設計技術也就沒啥問題了。

這裡小一推薦你們直接入門Python,我有寫一整套的Python 從入門到進階再到高階的學習教程,感興趣的可以快速入門:

小白學Python(入門+進階+高階)

R就不說多了,建議直接Python

2.4 SQL

我本來都忘了寫這個技能,回過頭看文章才補了上來。不是因為它不重要,而是我每天都在用,熟悉的都忘記了!

學習SQL 沒啥好說的,比上面的Python、R簡單多了

記住四個功能:增删改查

資料庫的基本操作都是圍繞這四個的,高階的資料庫操作在資料分析上也用不到,暫時不用考慮

2.5 挖掘能力

不要糾結這個小标題,權且把這個當做資料分析的一個加分項吧,有則更好。

目前的資料分析師大多都會要求懂些算法知識,這個沒辦法,别人懂就會比你有優勢,就會搶你飯碗。

對于新手來說,到了這一步建議直接先去看挖掘十大算法,了解概念就好,然後盡可能的看一些相關的算法模型案例,知道怎麼用就行。

最好,自己動手搞幾個資料集玩一玩。

至于手撕XX算法這種事,就看個人能力了,别勉強。

2.6 輸出能力

套路+練習,小一我覺得主要就這兩個。

畢竟寫PPT、輸出文章這種能力,和天賦有關系也和你的上司有關系,你要是寫的東西合胃口了,怎麼寫都行,要是不合,那可能就會有

xxxx資料分析報告Vxx.xx版

這種類型的報告頻繁出現了。

多看看老同僚們寫的文檔,熟悉熟悉自己公司的文檔風格和套路,多寫多練,也會慢慢好起來的,這不是什麼硬性要求。

總結

好了,介紹完了。

今天沒有總結,建議有空了回過頭把文章多讀幾遍

如果對你有用,就再順手點個贊吧。

寫在後面的話

我也不知道怎麼會寫這麼多内容,列完提綱我感覺很簡單,很快就能寫完,結果就......

可能自己這兩年經曆的東西太多了吧,上面寫的也都是自己在資料分析上摸爬滾打的一些心得,有些地方可能會有失偏頗,但整體還是希望能夠對你有所幫助。

抽空我會分享自己在資料分析之路上學習的一些資源教程,和自己看過的書籍清單

原創不易,歡迎點贊噢

文章首發:公衆号【知秋小夢】

文章同步:掘金,簡書,csdn

原文連結:2020,如何轉行資料分析?

歡迎點贊,希望對你有用