matplotlib探索泰坦尼克灾难数据 (1) 将数据框命名为titanic (2) 将PassengerId设置为索引 (3) 绘制一个展示男女乘客比例的扇形图 (4) 绘制一个展示船票Fare, 与乘客年龄和性别的散点图 (5) 有多少人生还? (6) 绘制一个展示船票价格的直方图
时间: 2024-03-15 22:45:05 浏览: 166
好的,以下是使用Python对Titanic数据进行探索的代码:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取Titanic数据集
titanic = pd.read_csv('titanic.csv')
# 将PassengerId设置为索引
titanic.set_index('PassengerId', inplace=True)
# 绘制一个展示男女乘客比例的扇形图
sex_counts = titanic['Sex'].value_counts()
plt.pie(sex_counts, labels=sex_counts.index, autopct='%1.1f%%', startangle=90)
plt.title('Sex Ratio of Titanic Passengers')
plt.show()
# 绘制一个展示船票Fare, 与乘客年龄和性别的散点图
plt.scatter(titanic['Age'], titanic['Fare'], c=titanic['Sex'].map({'male': 'b', 'female': 'r'}), alpha=0.5)
plt.xlabel('Age')
plt.ylabel('Fare')
plt.title('Fare vs Age by Sex')
plt.show()
# 计算生还人数
survived_counts = titanic['Survived'].value_counts()
num_survived = survived_counts[1]
# 输出生还人数
print('There were {} survivors on the Titanic.'.format(num_survived))
# 绘制一个展示船票价格的直方图
plt.hist(titanic['Fare'], bins=20)
plt.xlabel('Fare')
plt.ylabel('Count')
plt.title('Distribution of Titanic Fares')
plt.show()
```
运行以上代码,即可完成对Titanic数据的探索。其中,代码实现了以下功能:
1. 读取Titanic数据集并将其命名为titanic。
2. 将PassengerId设置为索引。
3. 绘制了一个展示男女乘客比例的扇形图。
4. 绘制了一个展示船票Fare, 与乘客年龄和性别的散点图。
5. 计算了生还人数并输出结果。
6. 绘制了一个展示船票价格的直方图。
您可以根据需要修改代码,以符合您的分析需求。
阅读全文