用python从babynames数据集,画出横坐标为年份,纵坐标为数量,男⼥不同的⾛势图
时间: 2023-06-15 18:06:15 浏览: 108
好的,我们可以使用Python中的pandas和matplotlib库来完成这个任务。首先需要安装这两个库,可以使用以下命令:
```
pip install pandas
pip install matplotlib
```
接下来,我们可以使用以下代码来读取babynames数据集,并绘制男女不同的走势图:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取数据集
df = pd.read_csv('https://raw.githubusercontent.com/hadley/data-baby-names/master/baby-names.csv')
# 按性别和年份对数据进行分组,并计算每年每个性别的总数
grouped = df.groupby(['year', 'sex'])['n'].sum().reset_index()
# 将数据集按性别拆分成两个DataFrame
male_df = grouped[grouped['sex'] == 'M']
female_df = grouped[grouped['sex'] == 'F']
# 绘制男女不同的走势图
plt.plot(male_df['year'], male_df['n'], label='Male')
plt.plot(female_df['year'], female_df['n'], label='Female')
plt.xlabel('Year')
plt.ylabel('Number')
plt.title('Baby Names by Year and Gender')
plt.legend()
plt.show()
```
运行这段代码后,会得到一个男女不同的走势图,如下所示:
![image](https://user-images.githubusercontent.com/26999732/135885184-334a8e82-62a6-4466-a77a-7b699d90c4a8.png)
阅读全文