针对Titanic.csv数据集中的关于乘客等级和存活状态的关系用随机森林用Python表示出来
时间: 2024-12-06 18:22:50 浏览: 16
python 常用 示例 数据 train.csv eval.csv titanic.csv
首先,让我们假设你已经有一个名为"Titanic.csv"的数据集,其中包含乘客的等级(Pclass)、生存状态(Survived)以及其他特征。要使用随机森林模型在Python中分析乘客等级与存活状态的关系,你可以按照以下步骤操作:
1. 导入所需的库:
```python
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score, confusion_matrix
```
2. 加载数据并预处理:
```python
data = pd.read_csv('Titanic.csv')
data.dropna(inplace=True) # 删除缺失值,如果有的话
X = data[['Pclass']] # 特征变量,这里只考虑等级
y = data['Survived'] # 目标变量,存活状态
# 将类别变量转换为数值(例如,将Pclass转换为整数)
X['Pclass'] = X['Pclass'].astype(int)
```
3. 划分训练集和测试集:
```python
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
4. 创建并训练随机森林模型:
```python
model = RandomForestClassifier(n_estimators=100, random_state=42)
model.fit(X_train, y_train)
```
5. 进行预测和评估性能:
```python
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
conf_mat = confusion_matrix(y_test, y_pred)
print(f"Accuracy: {accuracy}")
print("Confusion Matrix:\n", conf_mat)
```
在这个例子中,我们只基于等级(Pclass)来预测存活,但实际上可以加入其他特征。
阅读全文