
文章目錄
- 好萊塢百萬級電影評論數據分析
- Pandas 知識點
- 任務需求
- 1.導入所需庫
- 2.導入數據
- 讀取user
- 讀取Movie
- 讀取RATINGS
- 3. 數據合並
- 4.平均分較高電影
- 5. 不同性別對電影評分
- 6.不同性別爭議最大的電影
- 7.評論次數最多熱門的電影
- 8.查看不同年齡段爭議最大電影
- 9.每個年齡段用戶評分人數和打分偏好
- 10.優化數據分析,結果真實可靠
- 10.1 加入評分次數限制來分析不同性別對電影的平均分
- 10.2 加入評分次數限制分析平均分高的電影
- 總結
好萊塢百萬級電影評論數據分析
經過Pandas的入門學習,急需要通過一些簡單的項目來將所學知識和用法融會貫通,這裡選擇對好萊塢百萬級電影評論數據進行分析處理,下面就開始吧~
Pandas 知識點
- 數據讀取
- 數據集成
- 透視表
- 數據聚合與分組運算
- 分段統計
- 數據可視化
任務需求
- 數據加載和集成
- 平均分較高電影
- 不同性別對電影平均評分
- 不同性別爭議最大電影
- 評分次數最多熱門的電影
- 不同年齡段爭議最大的電影
- 優化與總結
本文所使用的所有數據鏈接:
鏈接: https://pan.baidu.com/s/1KBphl8o-YEFXVp8N1IlsgA 提取碼: 8daa
操作環境:Jupyter Notebook
1.導入所需庫

2.導入數據
讀取user
通過查看README可以得到USER數據的格式如下:
USERS FILE DESCRIPTION User information is in the file “users.dat” and is in the following format:
UserID::Gender::Age::Occupation::Zip-code
此處索引命名不一定非要一致,自己明白即可


若有紅色輸出則即可當做log日志,不用驚慌


讀取Movie
MOVIES FILE DESCRIPTION
Movie information is in the file “movies.dat” and is in the followingformat:
MovieID::Title::Genres



讀取RATINGS
RATINGS FILE DESCRIPTION
All ratings are contained in the file “ratings.dat” and are in thefollowing format:
UserID::MovieID::Rating::Timestamp

這裡讀取百萬級數據可能需要稍作等待。。。


3. 數據合並
由於數據分佈在三個表,所以需要對數據進行數據集成,首先將三張表簡單展示在一起,查看各自特征。
display(users.head(),movie.head(),ratings.head())

經過觀察發現後兩張表關於MovieID有重合,可以進行數據合並


merge()在並沒有指定在哪一列進行連接時,連接鍵信息沒有確定,此時merge()會自動將表中重疊列名作為連接的鍵,但是一般顯式的設定鏈接鍵是好的習慣。
另外在合並後有可能出現缺少數據的情況,這是因為默認是內連接方式,即為兩張表的交集部分進行合並,若是外連接方式則是鍵的並集,所以在數據合並後檢查數據總量是好的習慣。


movie_data.head(10)


4.平均分較高電影
既要顯示電影名稱又要有分數 考慮作透視表
以名稱為索引 以分數 並且計算平均分為數值來作透視表

按照分數排個序 inplace = True 節省內存不會打印輸出 直接在原數據進行排序




5. 不同性別對電影評分
依然是通過性別索引來建立透視表分析數據

這樣分析數據似乎不是非常直觀,且由於隻分析分值所以可以不顯示Rating數據

6.不同性別爭議最大的電影
查看列索引

創建新的列diff用來存放男女評分差異

要分析差異最大,可以對數據進行正向排序

因為是女減去男 所以差異最大的,是女性最喜歡的

此時排在最後的就是男減女差異最大的也就是男性最喜歡的

將男女最喜歡的電影合並成一張表,便於作圖觀察


分析結果 進行數據可視化


7.評論次數最多熱門的電影
次數最多考慮利用groupby按照title來做電影的數據聚合,采用size得出每種電影的次數進行排序

8.查看不同年齡段爭議最大電影
分析不同年齡段需要對用戶的年齡分佈圖作圖分析


用pandas.cut 函數將用戶年齡分組


9.每個年齡段用戶評分人數和打分偏好

10.優化數據分析,結果真實可靠
由於評分次數相差懸殊,導致有的電影評分人數少,卻得到很高的分數
解決方案: 加入評分次數考核限制
10.1 加入評分次數限制來分析不同性別對電影的平均分

這裡需要得到這50部電影的佈爾索引,用來刷選男女差異最大的電影


10.2 加入評分次數限制分析平均分高的電影

總結
在數據處理過程中,合並、透視、分組、排序最為常用,通過此項目,熟悉瞭Pandas在處理百萬級數據時的基本操作和一些常用API調用方法,瞭解到數據分析處理工作的流程,為後續深入學習打下基礎。

