如何利用pandas库中的df DataFrame来分析'titanic.csv'数据集,验证男性乘客是否倾向于将生存机会让给女性乘客?
时间: 2024-12-12 15:29:19 浏览: 3
在Python中,我们可以使用Pandas库对`titanic.csv`数据集进行分析,首先加载数据并清洗它。假设数据集中有性别(Sex)、乘客等级(Pclass)、登船地点(Embarked)和生死状态(Survived)等信息。以下是步骤:
1. **加载数据**:
```python
import pandas as pd
data = pd.read_csv('titanic.csv')
```
2. **数据预处理**:
- 确保数据完整,填充缺失值,或者按需删除列。
```python
data = data.dropna(subset=['Survived', 'Sex'])
```
3. **分组和计数**:
我们可以按照性别(Sex)和生存状态(Survived)进行分组,计算每个群体的存活比例。
```python
gender_counts = data.groupby(['Sex', 'Survived']).size().reset_index(name='Count')
```
4. **检查男女的生存差异**:
检查男性(Sex == 'male')和女性(Sex == 'female')在生还和未生还的情况下的比例是否有显著差异。
```python
male_counts = gender_counts[gender_counts['Sex'] == 'male']
female_counts = gender_counts[gender_counts['Sex'] == 'female']
male_survival_rate = male_counts[male_counts['Survived'] == 1]['Count'].sum() / male_counts['Count'].sum()
female_survival_rate = female_counts[female_counts['Survived'] == 1]['Count'].sum() / female_counts['Count'].sum()
print(f"Male survival rate: {male_survival_rate}")
print(f"Female survival rate: {female_survival_rate}")
```
5. **比较生存率**:
如果女性的生存率明显高于男性,那么可以说男性乘客倾向于将生存机会让给女性。
阅读全文