关于nba球员数据可视化分析的python代码
时间: 2023-09-20 11:13:40 浏览: 159
以下是一个简单的 Python 代码,用于爬取 NBA 球员数据并进行可视化分析:
```python
import requests
import pandas as pd
import matplotlib.pyplot as plt
# 爬取数据
url = 'https://www.basketball-reference.com/leagues/NBA_2021_per_game.html'
response = requests.get(url)
html = response.content
df_list = pd.read_html(html)
df = df_list[-1]
# 数据清洗
df = df.drop(df[df.Age == 'Age'].index)
df = df.fillna(0)
df['Age'] = df['Age'].astype(int)
df['G'] = df['G'].astype(int)
df['MP'] = df['MP'].astype(float)
df['FG%'] = df['FG%'].astype(float)
df['3P%'] = df['3P%'].astype(float)
df['FT%'] = df['FT%'].astype(float)
df['PTS'] = df['PTS'].astype(float)
# 数据可视化分析
plt.scatter(df['Age'], df['PTS'])
plt.xlabel('Age')
plt.ylabel('Points per Game')
plt.title('NBA Player Age vs. Points per Game (2020-2021 Season)')
plt.show()
```
代码解释:
1. 使用 requests 库获取 NBA 网站上的球员数据,并使用 pandas 库将其转换为 DataFrame 对象。
2. 对数据进行清洗,删除 Age 列的表头和 NaN 值,将数值型列的数据类型转换为 int 或 float。
3. 使用 matplotlib 库进行数据可视化分析,绘制 NBA 球员年龄与场均得分之间的散点图,并添加 x 轴、y 轴标签和标题。
4. 最后显示图形。
请注意,这只是一个简单的示例代码,您可能需要根据实际需求进行更改和扩展。