大數據的4V特色:python
Volume(大量):數據巨大。
Velocity(高速):數據產生快,每一天每一秒全球人產生的數據足夠龐大且數據處理也逐漸變快。
Variety(多樣):數據格式多樣化,如音頻數據、文本數據等
Value(價值):經過收集大量數據不相關數據探查並證實其二者之間的關聯性,所產生的價值,如買啤酒的人一般會購買尿布的案例。正則表達式
數據分析流程算法
通常能夠按「數據獲取-數據存儲與提取-數據預處理-數據建模與分析-數據可視化」這樣的步驟來實施一個數據分析項目。按照這個流程,每一個部分須要掌握的細分知識點以下:數據庫
咱們能夠經過如下的工具包,來實現整個數據分析的流程:numpy(科學計算/矩陣)、Pandas(數據處理/分析)、Matplotlib(數據圖表)、seaborn(數據可視化)等。網頁爬蟲
數據分析中80%的時間都是在數據清理部分,loading, clearning, transforming, rearranging。而pandas很是適合用來執行這些任務。api
數據分析的模塊有哪些:數組
數據獲取:公開數據、Python爬蟲cookie
外部數據的獲取方式主要有如下兩種。機器學習
第一種是獲取外部的公開數據集,一些科研機構、企業、政府會開放一些數據,你須要到特定的網站去下載這些數據。這些數據集一般比較完善、質量相對較高。scrapy
另外一種獲取外部數據的方式就是爬蟲。
好比你能夠經過爬蟲獲取招聘網站某一職位的招聘信息,爬取租房網站上某城市的租房信息,爬取豆瓣評分評分最高的電影列表,獲取知乎點贊排行、網易雲音樂評論排行列表。基於互聯網爬取的數據,你能夠對某個行業、某種人羣進行分析。
在爬蟲以前你須要先了解一些 Python 的基礎知識:元素(列表、字典、元組等)、變量、循環、函數………
以及,如何用 Python 庫(urllib、BeautifulSoup、requests、scrapy)實現網頁爬蟲。
掌握基礎的爬蟲以後,你還須要一些高級技巧,好比正則表達式、使用cookie信息、模擬用戶登陸、抓包分析、搭建代理池等等,來應對不一樣網站的反爬蟲限制。
數據存取:SQL語言
在應對萬之內的數據的時候,Excel對於通常的分析沒有問題,一旦數據量大,就會力不從心,數據庫就可以很好地解決這個問題。並且大多數的企業,都會以SQL的形式來存儲數據。
SQL做爲最經典的數據庫工具,爲海量數據的存儲與管理提供可能,而且使數據的提取的效率大大提高。你須要掌握如下技能:
提取特定狀況下的數據
數據庫的增、刪、查、改
數據的分組聚合、如何創建多個表之間的聯繫
數據預處理:Python(pandas)
不少時候咱們拿到的數據是不乾淨的,數據的重複、缺失、異常值等等,這時候就須要進行數據的清洗,把這些影響分析的數據處理好,才能得到更加精確地分析結果。
對於數據預處理,學會 pandas (Python包)的用法,應對通常的數據清洗就徹底沒問題了。須要掌握的知識點以下:
選擇:數據訪問
缺失值處理:對缺失數據行進行刪除或填充
重複值處理:重複值的判斷與刪除
異常值處理:清除沒必要要的空格和極端、異常數據
相關操做:描述性統計、Apply、直方圖等
合併:符合各類邏輯關係的合併操做
分組:數據劃分、分別執行函數、數據重組
Reshaping:快速生成數據透視表
機率論及統計學知識
須要掌握的知識點以下:
基本統計量:均值、中位數、衆數、百分位數、極值等
其餘描述性統計量:偏度、方差、標準差、顯着性等
其餘統計知識:整體和樣本、參數和統計量、ErrorBar
機率分佈與假設檢驗:各類分佈、假設檢驗流程
其餘機率論知識:條件機率、貝葉斯等
有了統計學的基本知識,你就能夠用這些統計量作基本的分析了。你可使用 Seaborn、matplotlib 等(python包)作一些可視化的分析,經過各類可視化統計圖,並得出具備指導意義的結果。
Python 數據分析
掌握迴歸分析的方法,經過線性迴歸和邏輯迴歸,其實你就能夠對大多數的數據進行迴歸分析,並得出相對精確地結論。這部分須要掌握的知識點以下:
迴歸分析:線性迴歸、邏輯迴歸
基本的分類算法:決策樹、隨機森林……
基本的聚類算法:k-means……
特徵工程基礎:如何用特徵選擇優化模型
調參方法:如何調節參數優化模型
Python 數據分析包:scipy、numpy、scikit-learn等
在數據分析的這個階段,重點了解迴歸分析的方法,大多數的問題能夠得以解決,利用描述性的統計分析和迴歸分析,你徹底能夠獲得一個不錯的分析結論。
固然,隨着你實踐量的增多,可能會遇到一些複雜的問題,你就可能須要去了解一些更高級的算法:分類、聚類。
而後你會知道面對不一樣類型的問題的時候更適合用哪一種算法模型,對於模型的優化,你須要去了解如何經過特徵提取、參數調節來提高預測的精度。
你能夠經過 Python 中的 scikit-learn 庫來實現數據分析、數據挖掘建模和分析的全過程。