如何使用Python编写代码来实现泰坦尼克号乘客存活率的数据分析和预测任务?具体代码是什么
时间: 2024-12-17 15:20:40 浏览: 6
泰坦尼克号幸存者预测【Python代码&数据集全套】
5星 · 资源好评率100%
要使用Python实现泰坦尼克号乘客存活率的数据分析和预测任务,你可以按照以下步骤操作:
1. **数据加载**:
首先,你需要安装`pandas`库来处理CSV文件。使用`read_csv()`函数从URL或本地文件读取数据。
```python
import pandas as pd
url = "https://raw.githubusercontent.com/datasciencedojo/datasets/master/titanic.csv"
data = pd.read_csv(url)
```
2. **数据预处理**:
检查缺失值、异常值,并对类别特征进行编码(例如,性别用数字表示)。
```python
# 查看缺失值
data.isnull().sum()
# 删除或填充缺失值
data.dropna(inplace=True) # 或者使用 fillna()方法处理缺失值
# 对类别变量进行编码,如 One-Hot 编码
data = pd.get_dummies(data, columns=["Sex", "Embarked"])
```
3. **特征选择和建模**:
分割数据集为训练集和测试集,通常比例可以是80%训练,20%测试。选择合适的模型,比如线性回归、决策树或随机森林。这里以随机森林为例:
```python
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score
X = data.drop("Survived", axis=1)
y = data["Survived"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
model = RandomForestClassifier()
model.fit(X_train, y_train)
predictions = model.predict(X_test)
```
4. **评估结果**:
使用准确率等指标评估模型性能。
```python
accuracy = accuracy_score(y_test, predictions)
print(f"Accuracy: {accuracy}")
```
5. **预测新数据**:
用模型对新的数据进行生存预测。
```python
new_data = {"Pclass": 3, "Age": 25, "SibSp": 1, "Parch": 0, "Fare": 7.925, "Sex_male": 0, "Embarked_Q": 0, "Embarked_S": 1} # 新样本特征
prediction = model.predict([list(new_data.values())])
print(f"New passenger's survival prediction: {'survives' if prediction[0] == 1 else 'does not survive'}")
```
阅读全文