用逻辑回归训练模型(max_iter=10000)对泰坦尼克号乘客生存预测,输出预测结果
时间: 2024-01-21 19:17:08 浏览: 20
好的,我可以帮你完成这个任务。首先,我们需要加载数据集并进行数据预处理:
```python
import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 加载数据集
data = pd.read_csv('titanic.csv')
# 数据预处理
data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1, inplace=True)
data['Age'].fillna(data['Age'].mean(), inplace=True)
data['Embarked'].fillna('S', inplace=True)
data = pd.get_dummies(data, columns=['Sex', 'Embarked'])
# 分离特征和标签
X = data.drop('Survived', axis=1)
y = data['Survived']
```
接下来,我们将数据集划分为训练集和测试集,并使用逻辑回归模型进行训练:
```python
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 训练逻辑回归模型
model = LogisticRegression(max_iter=10000)
model.fit(X_train, y_train)
```
最后,我们使用测试集数据进行预测,并输出预测结果:
```python
# 预测测试集数据
y_pred = model.predict(X_test)
# 输出预测结果
print("Accuracy:", accuracy_score(y_test, y_pred))
print("Survived:", y_pred)
```
这里的 `accuracy_score` 函数用于计算模型在测试集上的准确率,`y_pred` 是模型对测试集数据的预测结果。