【資料處理】Seaborn-NBA資料分析案例(2)
highlight: a11y-dark theme: awesome-green
我報名參加金石計劃1期挑戰——瓜分10萬獎池,這是我的第3篇文章,點選檢視活動詳情
注意:本案例使用 Jupyter NotebookJupyterNotebook 進行案例演示,資料集為NBA球員資訊資料集。本專案將進行完整的資料分析演示。資料集相關介紹請參考上一篇文章:【資料處理】Seaborn-NBA資料分析案例(1) - 掘金 (juejin.cn)
1. 球員資料分析
1.1 基本資料排名分析
1.1.1 步驟一:匯入資料
匯入相關模組並獲取資料:
```python import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns
1. 獲取資料集
NBA = pd.read_csv("nba_2017_nba_players_with_salary.csv") NBA.head() ```
1.1.2 步驟二:按照球員效率值排序
按照效率值進行排名,選出某幾列特徵,然後使用sort_value方法進行排序 - ascending=False:降序排列 - by="RPM":對RPM這列進行排序
```python NBA.loc[:, ["PLAYER","RPM","AGE"]].sort_values(by="RPM", ascending=False)
降序排列
按照效率值排名
``` 執行結果如下圖所示:
1.2 Seaborn常用的三個資料視覺化方法
1.2.1 單變數繪圖
我們將利用seaborn中的displot繪圖來分別看一下球員薪水、效率值、年齡這三個資訊的分佈情況。並且使這三張圖繪製在一個畫布中。 - 繪製條形圖 - sns.distplot:條形圖 - sns.set_style:設定主題
使用如下程式碼進行單變數繪圖: ```python
設定基本主題
sns.set_style("darkgrid") plt.figure(figsize=(10, 10))
畫三個圖:此處為第一行第一列的圖
plt.subplot(3,1,1) sns.distplot(NBA["SALARY_MILLIONS"]) plt.ylabel("salary") # 設定y軸名稱
畫第二個圖
plt.subplot(3,1,2) sns.distplot(NBA["RPM"]) plt.ylabel("RPM") # 設定y軸名稱
畫第三個圖
plt.subplot(3,1,3) sns.distplot(NBA["AGE"]) plt.ylabel("AGE") # 設定y軸名稱
儲存影象
plt.savefig("./test1.png") ```
程式碼執行結果如下圖所示:
1.2.2 雙變數繪圖
使用joijtplot檢視年齡和薪水之間的關係
- kind="hex":六邊形顯示
- 年齡小的時候,薪資也比較少
- 大部分資料都分佈於左下角
- 展示球員年齡和薪水之間的關係,採用不同的kind方式(等高線圖/hex/散點等),我們可以整體感受一下集中特點。
之間已經讀取過資料了,此處我們直接呼叫sns.jointplot繪製雙變數六邊形圖,執行如下程式碼:
python
sns.jointplot(NBA.AGE, NBA.SALARY_MILLIONS, kind="hex")
程式碼執行結果如圖所示:
1.2.3 多變數繪圖
用seaborn中的pairplot繪圖展示多個變數之間的關係 - 由於資料集太大了,我們獲取原資料集的幾個特徵作為資料。
步驟一:獲取資料集
python
multi_NBA = NBA.loc[:, ['RPM','AGE','SALARY_MILLIONS','ORB']]
multi_NBA
執行結果:
步驟二:繪製多變數關係圖
繪製多變數之間關係的散點圖,並且儲存影象。
```python sns.pairplot(multi_NBA)
儲存影象
plt.savefig("./test3.png") ``` 執行結果如下圖所示:
- 【深度學習】TensorFlow線性迴歸案例演示(3)
- 【機器學習】LSTM神經網路實現中國人口預測(2)
- 【資料處理】北京市租房案例實戰(5)
- 【資料處理】Pandas庫:畫圖與檔案讀取
- 【資料處理】Pandas庫:陣列運算
- 【資料處理】北京市租房案例實戰(3)
- 【PaddleDetection深度學習】中國交通標誌影象分類任務
- 【資料處理】北京市租房案例實戰(4)
- 【資料處理】北京市租房案例實戰(2)
- 【資料處理】Seaborn-NBA資料分析案例(4)
- 【深度學習】工業安全生產環境違規使用手機的識別
- 【資料處理】北京市租房案例實戰(1)
- 【資料處理】Seaborn-NBA資料分析案例(2)
- 【Numpy】資料處理-Numpy庫基本介紹
- 【Numpy資料處理】ndarray介紹
- 【深度學習】醫學影像目標檢測-瘧原蟲識別問題
- Linux作業系統-基本使用(1)
- 智慧演算法-粒子群演算法(3)
- 智慧演算法-粒子群演算法(2)
- 智慧演算法-禁忌搜尋演算法(2)