1. imdb數據集時間
您想問的是創建IMDB數據集的時間是什麼對吧。1990年。
數據集包含來自資料庫IMBD的50000條嚴重兩極分化的評論。自IMDB創立以來,數據集就包含各種評論。對於電影的評分使用最多的就是IMDB評分。
2. Python課程內容都學習什麼啊
賀聖軍Python輕松入門到項目實戰(經典完整版)(超清視頻)網路網盤
鏈接: https://pan..com/s/1C9k1o65FuQKNe68L3xEx3w
若資源有問題歡迎追問~
3. 學習Python需要哪些准備
小蝸這里整理了一份Python全棧開發系統的學習路線,每個階段所要掌握的知識都已列出,題主可參考這份大綱來進行學習規劃;
第一階段:專業核心基礎
階段目標:
1. 熟練掌握Python的開發環境與編程核心知識
2. 熟練運用Python面向對象知識進行程序開發
3. 對Python的核心庫和組件有深入理解
4. 熟練應用SQL語句進行資料庫常用操作
5. 熟練運用Linux操作系統命令及環境配置
6. 熟練使用MySQL,掌握資料庫高級操作
7. 能綜合運用所學知識完成項目
知識點:
Python編程基礎、Python面向對象、Python高級進階、MySQL資料庫、Linux操作系統。
1、Python編程基礎,語法規則,函數與參數,數據類型,模塊與包,文件IO,培養扎實的Python編程基本功,同時對Python核心對象和庫的編程有熟練的運用。
2、Python面向對象,核心對象,異常處理,多線程,網路編程,深入理解面向對象編程,異常處理機制,多線程原理,網路協議知識,並熟練運用於項目中。
3、類的原理,MetaClass,下劃線的特殊方法,遞歸,魔術方法,反射,迭代器,裝飾器,UnitTest,Mock。深入理解面向對象底層原理,掌握Python開發高級進階技術,理解單元測試技術。
4、資料庫知識,範式,MySQL配置,命令,建庫建表,數據的增刪改查,約束,視圖,存儲過程,函數,觸發器,事務,游標,PDBC,深入理解資料庫管理系統通用知識及MySQL資料庫的使用與管理。為Python後台開發打下堅實基礎。
5、Linux安裝配置,文件目錄操作,VI命令,管理,用戶與許可權,環境配置,Docker,Shell編程Linux作為一個主流的伺服器操作系統,是每一個開發工程師必須掌握的重點技術,並且能夠熟練運用。
第二階段:PythonWEB開發
階段目標:
1. 熟練掌握Web前端開發技術,HTML,CSS,JavaScript及前端框架
2. 深入理解Web系統中的前後端交互過程與通信協議
3. 熟練運用Web前端和Django和Flask等主流框架完成Web系統開發
4. 深入理解網路協議,分布式,PDBC,AJAX,JSON等知識
5. 能夠運用所學知識開發一個MiniWeb框架,掌握框架實現原理
6. 使用Web開發框架實現貫穿項目
知識點:
Web前端編程、Web前端高級、Django開發框架、Flask開發框架、Web開發項目實戰。
1、Web頁面元素,布局,CSS樣式,盒模型,JavaScript,JQuery與Bootstrap掌握前端開發技術,掌握JQuery與BootStrap前端開發框架,完成頁面布局與美化。
2、前端開發框架Vue,JSON數據,網路通信協議,Web伺服器與前端交互熟練使用Vue框架,深入理解HTTP網路協議,熟練使用Swagger,AJAX技術實現前後端交互。
3、自定義Web開發框架,Django框架的基本使用,Model屬性及後端配置,Cookie與Session,模板Templates,ORM數據模型,Redis二級緩存,RESTful,MVC模型掌握Django框架常用API,整合前端技術,開發完整的WEB系統和框架。
4、Flask安裝配置,App對象的初始化和配置,視圖函數的路由,Request對象,Abort函數,自定義錯誤,視圖函數的返回值,Flask上下文和請求鉤子,模板,資料庫擴展包Flask-Sqlalchemy,資料庫遷移擴展包Flask-Migrate,郵件擴展包Flask-Mail。掌握Flask框架的常用API,與Django框架的異同,並能獨立開發完整的WEB系統開發。
第三階段:爬蟲與數據分析
階段目標:
1. 熟練掌握爬蟲運行原理及常見網路抓包工具使用,能夠對HTTP及HTTPS協議進行抓包分析
2. 熟練掌握各種常見的網頁結構解析庫對抓取結果進行解析和提取
3. 熟練掌握各種常見反爬機制及應對策略,能夠針對常見的反爬措施進行處理
4. 熟練使用商業爬蟲框架Scrapy編寫大型網路爬蟲進行分布式內容爬取
5. 熟練掌握數據分析相關概念及工作流程
6. 熟練掌握主流數據分析工具Numpy、Pandas和Matplotlib的使用
7. 熟練掌握數據清洗、整理、格式轉換、數據分析報告編寫
8. 能夠綜合利用爬蟲爬取豆瓣網電影評論數據並完成數據分析全流程項目實戰
知識點:
網路爬蟲開發、數據分析之Numpy、數據分析之Pandas。
1、爬蟲頁面爬取原理、爬取流程、頁面解析工具LXML,Beautifulfoup,正則表達式,代理池編寫和架構、常見反爬措施及解決方案、爬蟲框架結構、商業爬蟲框架Scrapy,基於對爬蟲爬取原理、網站數據爬取流程及網路協議的分析和了解,掌握網頁解析工具的使用,能夠靈活應對大部分網站的反爬策略,具備獨立完成爬蟲框架的編寫能力和熟練應用大型商業爬蟲框架編寫分布式爬蟲的能力。
2、Numpy中的ndarray數據結構特點、numpy所支持的數據類型、自帶的數組創建方法、算術運算符、矩陣積、自增和自減、通用函數和聚合函數、切片索引、ndarray的向量化和廣播機制,熟悉數據分析三大利器之一Numpy的常見使用,熟悉ndarray數據結構的特點和常見操作,掌握針對不同維度的ndarray數組的分片、索引、矩陣運算等操作。
3、Pandas裡面的三大數據結構,包括Dataframe、Series和Index對象的基本概念和使用,索引對象的更換及刪除索引、算術和數據對齊方法,數據清洗和數據規整、結構轉換,熟悉數據分析三大利器之一Pandas的常見使用,熟悉Pandas中三大數據對象的使用方法,能夠使用Pandas完成數據分析中最重要的數據清洗、格式轉換和數據規整工作、Pandas對文件的讀取和操作方法。
4、matplotlib三層結構體系、各種常見圖表類型折線圖、柱狀圖、堆積柱狀圖、餅圖的繪制、圖例、文本、標線的添加、可視化文件的保存,熟悉數據分析三大利器之一Matplotlib的常見使用,熟悉Matplotlib的三層結構,能夠熟練使用Matplotlib繪制各種常見的數據分析圖表。能夠綜合利用課程中所講的各種數據分析和可視化工具完成股票市場數據分析和預測、共享單車用戶群里數據分析、全球幸福指數數據分析等項目的全程實戰。
第四階段:機器學習與人工智慧
階段目標:
1. 理解機器學習相關的基本概念及系統處理流程
2. 能夠熟練應用各種常見的機器學習模型解決監督學習和非監督學習訓練和測試問題,解決回歸、分類問題
3. 熟練掌握常見的分類演算法和回歸演算法模型,如KNN、決策樹、隨機森林、K-Means等
4. 掌握卷積神經網路對圖像識別、自然語言識別問題的處理方式,熟悉深度學習框架TF裡面的張量、會話、梯度優化模型等
5. 掌握深度學習卷積神經網路運行機制,能夠自定義卷積層、池化層、FC層完成圖像識別、手寫字體識別、驗證碼識別等常規深度學習實戰項目
知識點:
1、機器學習常見演算法、sklearn數據集的使用、字典特徵抽取、文本特徵抽取、歸一化、標准化、數據主成分分析PCA、KNN演算法、決策樹模型、隨機森林、線性回歸及邏輯回歸模型和演算法。熟悉機器學習相關基礎概念,熟練掌握機器學習基本工作流程,熟悉特徵工程、能夠使用各種常見機器學習演算法模型解決分類、回歸、聚類等問題。
2、Tensorflow相關的基本概念,TF數據流圖、會話、張量、tensorboard可視化、張量修改、TF文件讀取、tensorflow playround使用、神經網路結構、卷積計算、激活函數計算、池化層設計,掌握機器學習和深度學習之前的區別和練習,熟練掌握深度學習基本工作流程,熟練掌握神經網路的結構層次及特點,掌握張量、圖結構、OP對象等的使用,熟悉輸入層、卷積層、池化層和全連接層的設計,完成驗證碼識別、圖像識別、手寫輸入識別等常見深度學習項目全程實戰。
4. 誰會用豆瓣API採集豆瓣資料庫中的電影信息嗎
豆瓣API 是採集不了的。你必須有豆瓣電影的ID才行。 你想要利用這部分信息的話 就必須先採集豆瓣電影列表的 標題和ID 然後 通過ID來獲取這個電影的其他信息;
5. 如何快速成為數據分析師
接下來我們分別從每一個部分講講具體應該學什麼、怎麼學。
數據獲取:公開數據、Python爬蟲
如果接觸的只是企業資料庫里的數據,不需要要獲取外部數據的,這個部分可以忽略。
外部數據的獲取方式主要有以下兩種。
第一種是獲取外部的公開數據集,一些科研機構、企業、政府會開放一些數據,你需要到特定的網站去下載這些數據。這些數據集通常比較完善、質量相對較高。
另一種獲取外部數據費的方式就是爬蟲。
比如你可以通過爬蟲獲取招聘網站某一職位的招聘信息,爬取租房網站上某城市的租房信息,爬取豆瓣評分評分最高的電影列表,獲取知乎點贊排行、網易雲音樂評論排行列表。基於互聯網爬取的數據,你可以對某個行業、某種人群進行分析。
在爬蟲之前你需要先了解一些 Python 的基礎知識:元素(列表、字典、元組等)、變數、循環、函數(鏈接的菜鳥教程非常好)……以及如何用成熟的 Python 庫(urllib、BeautifulSoup、requests、scrapy)實現網頁爬蟲。如果是初學,建議從 urllib 和 BeautifulSoup 開始。(PS:後續的數據分析也需要 Python 的知識,以後遇到的問題也可以在這個教程查看)
網上的爬蟲教程不要太多,爬蟲上手推薦豆瓣的網頁爬取,一方面是網頁結構比較簡單,二是豆瓣對爬蟲相對比較友好。
掌握基礎的爬蟲之後,你還需要一些高級技巧,比如正則表達式、模擬用戶登錄、使用代理、設置爬取頻率、使用cookie信息等等,來應對不同網站的反爬蟲限制。
除此之外,常用的的電商網站、問答網站、點評網站、二手交易網站、婚戀網站、招聘網站的數據,都是很好的練手方式。這些網站可以獲得很有分析意義的數據,最關鍵的是,有很多成熟的代碼,可以參考。
數據存取:SQL語言
你可能有一個疑惑,為什麼沒有講到Excel。在應對萬以內的數據的時候,Excel對於一般的分析沒有問題,一旦數據量大,就會力不從心,資料庫就能夠很好地解決這個問題。而且大多數的企業,都會以SQL的形式來存儲數據,如果你是一個分析師,也需要懂得SQL的操作,能夠查詢、提取數據。
SQL作為最經典的資料庫工具,為海量數據的存儲與管理提供可能,並且使數據的提取的效率大大提升。你需要掌握以下技能:
提取特定情況下的數據:企業資料庫里的數據一定是大而繁復的,你需要提取你需要的那一部分。比如你可以根據你的需要提取2018年所有的銷售數據、提取今年銷量最大的50件商品的數據、提取上海、廣東地區用戶的消費數據……,SQL可以通過簡單的命令幫你完成這些工作。
資料庫的增、刪、查、改:這些是資料庫最基本的操作,但只要用簡單的命令就能夠實現,所以你只需要記住命令就好。
數據的分組聚合、如何建立多個表之間的聯系:這個部分是SQL的進階操作,多個表之間的關聯,在你處理多維度、多個數據集的時候非常有用,這也讓你可以去處理更復雜的數據。
數據預處理:Python(pandas)
很多時候我們拿到的數據是不幹凈的,數據的重復、缺失、異常值等等,這時候就需要進行數據的清洗,把這些影響分析的數據處理好,才能獲得更加精確地分析結果。
比如空氣質量的數據,其中有很多天的數據由於設備的原因是沒有監測到的,有一些數據是記錄重復的,還有一些數據是設備故障時監測無效的。比如用戶行為數據,有很多無效的操作對分析沒有意義,就需要進行刪除。
那麼我們需要用相應的方法去處理,比如殘缺數據,我們是直接去掉這條數據,還是用臨近的值去補全,這些都是需要考慮的問題。
對於數據預處理,學會 pandas 的用法,應對一般的數據清洗就完全沒問題了。需要掌握的知識點如下:
選擇:數據訪問(標簽、特定值、布爾索引等)
缺失值處理:對缺失數據行進行刪除或填充
重復值處理:重復值的判斷與刪除
空格和異常值處理:清楚不必要的空格和極端、異常數據
相關操作:描述性統計、Apply、直方圖等
合並:符合各種邏輯關系的合並操作
分組:數據劃分、分別執行函數、數據重組
Reshaping:快速生成數據透視表
概率論及統計學知識
數據整體分布是怎樣的?什麼是總體和樣本?中位數、眾數、均值、方差等基本的統計量如何應用?如果有時間維度的話隨著時間的變化是怎樣的?如何在不同的場景中做假設檢驗?數據分析方法大多源於統計學的概念,所以統計學的知識也是必不可少的。需要掌握的知識點如下:
基本統計量:均值、中位數、眾數、百分位數、極值等
其他描述性統計量:偏度、方差、標准差、顯著性等
其他統計知識:總體和樣本、參數和統計量、ErrorBar
概率分布與假設檢驗:各種分布、假設檢驗流程
其他概率論知識:條件概率、貝葉斯等
有了統計學的基本知識,你就可以用這些統計量做基本的分析了。通過可視化的方式來描述數據的指標,其實可以得出很多結論了,比如排名前100的是哪些,平均水平是怎樣的,近幾年的變化趨勢如何……
你可以使用python的包 Seaborn(python包)在做這些可視化的分析,你會輕松地畫出各種可視化圖形,並得出具有指導意義的結果。了解假設檢驗之後,可以對樣本指標與假設的總體指標之間是否存在差別作出判斷,已驗證結果是否在可接受的范圍。
python數據分析
如果你有一些了解的話,就知道目前市面上其實有很多 Python 數據分析的書籍,但每一本都很厚,學習阻力非常大。但其實真正最有用的那部分信息,只是這些書里很少的一部分。比如用 Python 實現不同案例的假設檢驗,其實你就可以對數據進行很好的驗證。
比如掌握回歸分析的方法,通過線性回歸和邏輯回歸,其實你就可以對大多數的數據進行回歸分析,並得出相對精確地結論。比如DataCastle的訓練競賽「房價預測」和「職位預測」,都可以通過回歸分析實現。這部分需要掌握的知識點如下:
回歸分析:線性回歸、邏輯回歸
基本的分類演算法:決策樹、隨機森林……
基本的聚類演算法:k-means……
特徵工程基礎:如何用特徵選擇優化模型
調參方法:如何調節參數優化模型
Python 數據分析包:scipy、numpy、scikit-learn等
在數據分析的這個階段,重點了解回歸分析的方法,大多數的問題可以得以解決,利用描述性的統計分析和回歸分析,你完全可以得到一個不錯的分析結論。
當然,隨著你實踐量的增多,可能會遇到一些復雜的問題,你就可能需要去了解一些更高級的演算法:分類、聚類,然後你會知道面對不同類型的問題的時候更適合用哪種演算法模型,對於模型的優化,你需要去學習如何通過特徵提取、參數調節來提升預測的精度。這就有點數據挖掘和機器學習的味道了,其實一個好的數據分析師,應該算是一個初級的數據挖掘工程師了。
系統實戰
這個時候,你就已經具備了數據分析的基本能力了。但是還要根據不同的案例、不同的業務場景進行實戰。能夠獨立完成分析任務,那麼你就已經打敗市面上大部分的數據分析師了。
如何進行實戰呢?
上面提到的公開數據集,可以找一些自己感興趣的方向的數據,嘗試從不同的角度來分析,看看能夠得到哪些有價值的結論。
另一個角度是,你可以從生活、工作中去發現一些可用於分析的問題,比如上面說到的電商、招聘、社交等平台等方向都有著很多可以挖掘的問題。
開始的時候,你可能考慮的問題不是很周全,但隨著你經驗的積累,慢慢就會找到分析的方向,有哪些一般分析的維度,比如top榜單、平均水平、區域分布、年齡分布、相關性分析、未來趨勢預測等等。隨著經驗的增加,你會有一些自己對於數據的感覺,這就是我們通常說的數據思維了。
你也可以看看行業的分析報告,看看優秀的分析師看待問題的角度和分析問題的維度,其實這並不是一件困難的事情。
在掌握了初級的分析方法之後,也可以嘗試做一些數據分析的競賽,比如 DataCastle 為數據分析師專門定製的三個競賽,提交答案即可獲取評分和排名:
員工離職預測訓練賽
美國King County房價預測訓練賽
北京PM2.5濃度分析訓練賽
種一棵樹最好的時間是十年前,其次是現在。現在就去,找一個數據集開始吧!!
6. 數據挖掘數據集怎麼找
數據堂網站 datatang.com 或者自己寫爬蟲去相關的網站爬(比如你需要電影的數據,就去豆瓣電影爬)
7. 如何用聚類取把電影評分數據集分類
聚類分析指將物理或抽象對象的集合分組為由類似的對象組成的多個類的分析過程。它是一種重要的人類行為。
聚類分析的目標就是在相似的基礎上收集數據來分類。聚類源於很多領域,包括數學,計算機科學,統計學,生物學和經濟學。在不同的應用領域,很多聚類技術都得到了發展,這些技術方法被用作描述數據,衡量不同數據源間的相似性,以及把數據源分類到不同的簇中。
8. 女生零基礎學大數據分析可行么
數據分析的流程,一般可以按「數據獲取-數據存儲與提取-數據預處理-數據建模與分析-數據可視化」這樣的步驟來實施一個數據分析項目。按照這個流程,每個部分需要掌握的細分知識點如下:
高效的學習路徑是什麼?就是數據分析的這個流程。按這樣的順序循序漸進,你會知道每個部分需要完成的目標是什麼,需要學習哪些知識點,哪些知識是暫時不必要的。
每學習一個部分,你就能夠有一些實際的成果輸出,有正向的反饋,你才會願意花更多的時間投入進去。以解決問題為目標,效率自然不會低。
按照上面的流程,我們總結學習路徑如下:
python基礎知識
python爬蟲
SQL語言
python科學計算包:pandas、numpy、scikit-learn
統計學基礎
回歸分析方法
數據挖掘基本演算法:分類、聚類
模型優化:特徵提取
數據可視化:seaborn、matplotlib
接下來我們分別從每一個部分講講具體應該學什麼、怎麼學。
一、數據獲取:公開數據、Python爬蟲
如果接觸的只是企業資料庫里的數據,不需要要獲取外部數據的,這個部分可以忽略。但還是建議每一個數據分析師,都兼備外部數據獲取的能力。
外部數據的獲取方式主要有以下兩種。
第一種是獲取外部的公開數據集,一些科研機構、企業、政府會開放一些數據,你需要到特定的網站去下載這些數據。這些數據集通常比較完善、質量相對較高。給大家推薦一些常用的可以獲取數據集的網站:
UCI:加州大學歐文分校開放的經典數據集,被很多數據挖掘實驗室採用。
另一種獲取外部數據費的方式就是爬蟲。
比如你可以通過爬蟲獲取招聘網站某一職位的招聘信息,爬取租房網站上某城市的租房信息,爬取豆瓣評分評分最高的電影列表,獲取知乎點贊排行、網易雲音樂評論排行列表。基於互聯網爬取的數據,你可以對某個行業、某種人群進行分析。
以及,還需要了解如何用 Python庫(urllib、BeautifulSoup、requests、scrapy)實現網頁爬蟲。如果是初學,建議從 urllib和 BeautifulSoup開始。(PS:後續的數據分析也需要 Python的知識,以後遇到的問題也可以在這個教程查看)。
網上的爬蟲教程不要太多,爬蟲上手推薦豆瓣的網頁爬取,一方面是網頁結構比較簡單,二是豆瓣對爬蟲相對比較友好。
掌握基礎的爬蟲之後,你還需要一些高級技巧,比如正則表達式、模擬用戶登錄、使用代理、設置爬取頻率、使用cookie信息等等,來應對不同網站的反爬蟲限制。
除此之外,常用的的電商網站、問答網站、二手交易網站、婚戀網站、招聘網站的數據,都是很好的練手方式。這些網站可以獲得很有分析意義的數據,最關鍵的是,有很多成熟的代碼,可以參考。
二、數據存取:SQL語言
你可能有一個疑惑,為什麼沒有講到Excel。在應對萬以內的數據的時候,Excel對於一般的分析沒有問題,一旦數據量大,就會力不從心,資料庫就能夠很好地解決這個問題。而且大多數的企業,都會以SQL的形式來存儲數據,如果你是一個分析師,也至少要懂得SQL的操作,能夠查詢、提取公司的數據。
SQL作為最經典的資料庫工具,為海量數據的存儲與管理提供可能,並且使數據的提取的效率大大提升。你需要掌握以下技能:
提取特定情況下的數據:企業資料庫里的數據一定是大而繁復的,你需要提取你需要的那一部分。比如你可以根據你的需要提取2017年所有的銷售數據、提取今年銷量最大的50件商品的數據、提取上海、廣東地區用戶的消費數據……,SQL可以通過簡單的命令幫你完成這些工作。
資料庫的增、刪、查、改:這些是資料庫最基本的操作,但只要用簡單的命令就能夠實現,所以你只需要記住命令就好。
數據的分組聚合、如何建立多個表之間的聯系:這個部分是SQL的進階操作,多個表之間的關聯,在你處理多維度、多個數據集的時候非常有用,這也讓你可以去處理更復雜的數據。
SQL這個部分相對來說比較簡單,可以去這個教程:
當然,還是建議你找幾個數據集來實際操作一下,哪怕是最基礎的查詢、提取等。你可以去調用一些公司的數據來進行實際的演練。
三、數據預處理:Python(pandas)
很多時候我們拿到的數據是不幹凈的,數據的重復、缺失、異常值等等,這時候就需要進行數據的清洗,把這些影響分析的數據處理好,才能獲得更加精確地分析結果。
比如銷售數據,有一些渠道的銷售是沒有及時錄入的,有一些數據是記錄重復的。比如用戶行為數據,有很多無效的操作對分析沒有意義,就需要進行刪除。
那麼我們需要用相應的方法去處理,比如殘缺數據,我們是直接去掉這條數據,還是用臨近的值去補全,這些都是需要考慮的問題。
對於數據預處理,學會 pandas (Python包)的用法,應對一般的數據清洗就完全沒問題了。需要掌握的知識點如下:
選擇:數據訪問(標簽、特定值、布爾索引等)
缺失值處理:對缺失數據行進行刪除或填充
重復值處理:重復值的判斷與刪除
空格和異常值處理:清除不必要的空格和極端、異常數據
相關操作:描述性統計、Apply、直方圖等
合並:符合各種邏輯關系的合並操作
分組:數據劃分、分別執行函數、數據重組
Reshaping:快速生成數據透視表
網上有很多 pandas的教程,主要是一些函數的應用,也都非常簡單,如果遇到問題,可以參看 pandas操作的官方文檔。
四、概率論及統計學知識
數據整體分布是怎樣的?什麼是總體和樣本?中位數、眾數、均值、方差等基本的統計量如何應用?如果有時間維度的話隨著時間的變化是怎樣的?如何在不同的場景中做假設檢驗?數據分析方法大多源於統計學的概念,所以統計學的知識也是必不可少的。需要掌握的知識點如下:
基本統計量:均值、中位數、眾數、百分位數、極值等
其他描述性統計量:偏度、方差、標准差、顯著性等
其他統計知識:總體和樣本、參數和統計量、ErrorBar
概率分布與假設檢驗:各種分布、假設檢驗流程
其他概率論知識:條件概率、貝葉斯等
有了統計學的基本知識,你就可以用這些統計量做基本的分析了。通過可視化的方式來描述數據的指標,其實可以得出很多結論了:比如排名前100的是哪些,平均水平是怎樣的,近幾年的變化趨勢如何……
你可以使用 Seaborn、matplotlib等(python包)做一些可視化的分析,通過各種可視化統計圖,並得出具有指導意義的結果。了解假設檢驗之後,可以對樣本指標與假設的總體指標之間是否存在差別作出判斷,以驗證結果是否在可接受的范圍。
推薦書:《深入淺出統計學》
五、Python數據分析
如果你有一些了解的話,就知道目前市面上其實有很多 Python數據分析的書籍,但每一本都很厚,學習阻力非常大。但其實真正最有用的那部分信息,只是這些書里很少的一部分。比如用 Python實現不同案例的假設檢驗,其實你就可以對數據進行很好的驗證。
比如掌握回歸分析的方法,通過線性回歸和邏輯回歸,其實你就可以對大多數的數據進行回歸分析,並得出相對精確地結論。這部分需要掌握的知識點如下:
回歸分析:線性回歸、邏輯回歸
基本的分類演算法:決策樹、隨機森林……
基本的聚類演算法:k-means……
特徵工程基礎:如何用特徵選擇優化模型
調參方法:如何調節參數優化模型
Python數據分析包:scipy、numpy、scikit-learn等
在數據分析的這個階段,重點了解回歸分析的方法,大多數的問題可以得以解決,利用描述性的統計分析和回歸分析,你完全可以得到一個不錯的分析結論。
當然,隨著你實踐量的增多,可能會遇到一些復雜的問題,你就可能需要去了解一些更高級的演算法:分類、聚類。
然後你會知道面對不同類型的問題的時候更適合用哪種演算法模型,對於模型的優化,你需要去學習如何通過特徵提取、參數調節來提升預測的精度。這就有點數據挖掘和機器學習的味道了,其實一個好的數據分析師,應該算是一個初級的數據挖掘工程師了。
你可以通過 Python中的 scikit-learn來實現數據分析、數據挖掘建模和分析的全過程。
六、系統實戰與數據思維
到這個時候,你就已經具備了數據分析的基本能力了。但是還要根據不同的案例、不同的業務場景進行實戰,練習解決實際問題的能力。如何進行實戰呢?
上面提到的公開數據集,可以找一些自己感興趣的方向的數據,嘗試從不同的角度來分析,看看能夠得到哪些有價值的結論。
另一個角度是,你可以從生活、工作中去發現一些可用於分析的問題,比如上面說到的電商、招聘、社交等平台等方向都有著很多可以挖掘的問題。
開始的時候,你可能考慮的問題不是很周全,但隨著你經驗的積累,慢慢就會找到分析的方向,有哪些一般分析的維度,比如top榜單、平均水平、區域分布、年齡分布、相關性分析、未來趨勢預測等等。隨著經驗的增加,你會有一些自己對於數據的感覺,這就是我們通常說的數據思維了。
如果在分析思路和報告撰寫過程中遇到困難,你也可以看看專業的行業分析報告。
9. 如何成為一個數據分析師需要具備哪些技能
接下來我們分別從每一個部分講講具體應該學什麼、怎麼學。
數據獲取:公開數據、Python爬蟲
如果接觸的只是企業資料庫里的數據,不需要要獲取外部數據的,這個部分可以忽略。
外部數據的獲取方式主要有以下兩種。
第一種是獲取外部的公開數據集,一些科研機構、企業、政府會開放一些數據,你需要到特定的網站去下載這些數據。這些數據集通常比較完善、質量相對較高。
另一種獲取外部數據費的方式就是爬蟲。
比如你可以通過爬蟲獲取招聘網站某一職位的招聘信息,爬取租房網站上某城市的租房信息,爬取豆瓣評分評分最高的電影列表,獲取知乎點贊排行、網易雲音樂評論排行列表。基於互聯網爬取的數據,你可以對某個行業、某種人群進行分析。
在爬蟲之前你需要先了解一些 Python 的基礎知識:元素(列表、字典、元組等)、變數、循環、函數(鏈接的菜鳥教程非常好)……以及如何用成熟的 Python 庫(urllib、BeautifulSoup、requests、scrapy)實現網頁爬蟲。如果是初學,建議從 urllib 和 BeautifulSoup 開始。(PS:後續的數據分析也需要 Python 的知識,以後遇到的問題也可以在這個教程查看)
網上的爬蟲教程不要太多,爬蟲上手推薦豆瓣的網頁爬取,一方面是網頁結構比較簡單,二是豆瓣對爬蟲相對比較友好。
掌握基礎的爬蟲之後,你還需要一些高級技巧,比如正則表達式、模擬用戶登錄、使用代理、設置爬取頻率、使用cookie信息等等,來應對不同網站的反爬蟲限制。
除此之外,常用的的電商網站、問答網站、點評網站、二手交易網站、婚戀網站、招聘網站的數據,都是很好的練手方式。這些網站可以獲得很有分析意義的數據,最關鍵的是,有很多成熟的代碼,可以參考。
數據存取:SQL語言
你可能有一個疑惑,為什麼沒有講到Excel。在應對萬以內的數據的時候,Excel對於一般的分析沒有問題,一旦數據量大,就會力不從心,資料庫就能夠很好地解決這個問題。而且大多數的企業,都會以SQL的形式來存儲數據,如果你是一個分析師,也需要懂得SQL的操作,能夠查詢、提取數據。
SQL作為最經典的資料庫工具,為海量數據的存儲與管理提供可能,並且使數據的提取的效率大大提升。你需要掌握以下技能:
提取特定情況下的數據:企業資料庫里的數據一定是大而繁復的,你需要提取你需要的那一部分。比如你可以根據你的需要提取2018年所有的銷售數據、提取今年銷量最大的50件商品的數據、提取上海、廣東地區用戶的消費數據……,SQL可以通過簡單的命令幫你完成這些工作。
資料庫的增、刪、查、改:這些是資料庫最基本的操作,但只要用簡單的命令就能夠實現,所以你只需要記住命令就好。
數據的分組聚合、如何建立多個表之間的聯系:這個部分是SQL的進階操作,多個表之間的關聯,在你處理多維度、多個數據集的時候非常有用,這也讓你可以去處理更復雜的數據。
數據預處理:Python(pandas)
很多時候我們拿到的數據是不幹凈的,數據的重復、缺失、異常值等等,這時候就需要進行數據的清洗,把這些影響分析的數據處理好,才能獲得更加精確地分析結果。
比如空氣質量的數據,其中有很多天的數據由於設備的原因是沒有監測到的,有一些數據是記錄重復的,還有一些數據是設備故障時監測無效的。比如用戶行為數據,有很多無效的操作對分析沒有意義,就需要進行刪除。
那麼我們需要用相應的方法去處理,比如殘缺數據,我們是直接去掉這條數據,還是用臨近的值去補全,這些都是需要考慮的問題。
對於數據預處理,學會 pandas 的用法,應對一般的數據清洗就完全沒問題了。需要掌握的知識點如下:
選擇:數據訪問(標簽、特定值、布爾索引等)
缺失值處理:對缺失數據行進行刪除或填充
重復值處理:重復值的判斷與刪除
空格和異常值處理:清楚不必要的空格和極端、異常數據
相關操作:描述性統計、Apply、直方圖等
合並:符合各種邏輯關系的合並操作
分組:數據劃分、分別執行函數、數據重組
Reshaping:快速生成數據透視表
概率論及統計學知識
數據整體分布是怎樣的?什麼是總體和樣本?中位數、眾數、均值、方差等基本的統計量如何應用?如果有時間維度的話隨著時間的變化是怎樣的?如何在不同的場景中做假設檢驗?數據分析方法大多源於統計學的概念,所以統計學的知識也是必不可少的。需要掌握的知識點如下:
基本統計量:均值、中位數、眾數、百分位數、極值等
其他描述性統計量:偏度、方差、標准差、顯著性等
其他統計知識:總體和樣本、參數和統計量、ErrorBar
概率分布與假設檢驗:各種分布、假設檢驗流程
其他概率論知識:條件概率、貝葉斯等
有了統計學的基本知識,你就可以用這些統計量做基本的分析了。通過可視化的方式來描述數據的指標,其實可以得出很多結論了,比如排名前100的是哪些,平均水平是怎樣的,近幾年的變化趨勢如何……
你可以使用python的包 Seaborn(python包)在做這些可視化的分析,你會輕松地畫出各種可視化圖形,並得出具有指導意義的結果。了解假設檢驗之後,可以對樣本指標與假設的總體指標之間是否存在差別作出判斷,已驗證結果是否在可接受的范圍。
python數據分析
如果你有一些了解的話,就知道目前市面上其實有很多 Python 數據分析的書籍,但每一本都很厚,學習阻力非常大。但其實真正最有用的那部分信息,只是這些書里很少的一部分。比如用 Python 實現不同案例的假設檢驗,其實你就可以對數據進行很好的驗證。
比如掌握回歸分析的方法,通過線性回歸和邏輯回歸,其實你就可以對大多數的數據進行回歸分析,並得出相對精確地結論。比如DataCastle的訓練競賽「房價預測」和「職位預測」,都可以通過回歸分析實現。這部分需要掌握的知識點如下:
回歸分析:線性回歸、邏輯回歸
基本的分類演算法:決策樹、隨機森林……
基本的聚類演算法:k-means……
特徵工程基礎:如何用特徵選擇優化模型
調參方法:如何調節參數優化模型
Python 數據分析包:scipy、numpy、scikit-learn等
在數據分析的這個階段,重點了解回歸分析的方法,大多數的問題可以得以解決,利用描述性的統計分析和回歸分析,你完全可以得到一個不錯的分析結論。
當然,隨著你實踐量的增多,可能會遇到一些復雜的問題,你就可能需要去了解一些更高級的演算法:分類、聚類,然後你會知道面對不同類型的問題的時候更適合用哪種演算法模型,對於模型的優化,你需要去學習如何通過特徵提取、參數調節來提升預測的精度。這就有點數據挖掘和機器學習的味道了,其實一個好的數據分析師,應該算是一個初級的數據挖掘工程師了。
系統實戰
這個時候,你就已經具備了數據分析的基本能力了。但是還要根據不同的案例、不同的業務場景進行實戰。能夠獨立完成分析任務,那麼你就已經打敗市面上大部分的數據分析師了。
如何進行實戰呢?
上面提到的公開數據集,可以找一些自己感興趣的方向的數據,嘗試從不同的角度來分析,看看能夠得到哪些有價值的結論。
另一個角度是,你可以從生活、工作中去發現一些可用於分析的問題,比如上面說到的電商、招聘、社交等平台等方向都有著很多可以挖掘的問題。
開始的時候,你可能考慮的問題不是很周全,但隨著你經驗的積累,慢慢就會找到分析的方向,有哪些一般分析的維度,比如top榜單、平均水平、區域分布、年齡分布、相關性分析、未來趨勢預測等等。隨著經驗的增加,你會有一些自己對於數據的感覺,這就是我們通常說的數據思維了。
你也可以看看行業的分析報告,看看優秀的分析師看待問題的角度和分析問題的維度,其實這並不是一件困難的事情。
在掌握了初級的分析方法之後,也可以嘗試做一些數據分析的競賽,比如 DataCastle 為數據分析師專門定製的三個競賽,提交答案即可獲取評分和排名:
員工離職預測訓練賽
美國King County房價預測訓練賽
北京PM2.5濃度分析訓練賽
種一棵樹最好的時間是十年前,其次是現在。現在就去,找一個數據集開始吧!!
10. 求一份Python爬取豆瓣影評數據集,多部電影,多影評的,哎
這種類型的