泰坦尼克号是否生还python完整代码
时间: 2023-09-06 15:05:51 浏览: 51
以下是使用Python编写的泰坦尼克号生还预测的完整代码:
```
# 导入所需的库
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
# 加载训练数据
data = pd.read_csv('train.csv')
# 数据预处理
data = data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1)
data = data.dropna()
data['Sex'] = data['Sex'].map({'female': 0, 'male': 1})
# 特征工程
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=0)
# 训练模型
model = RandomForestClassifier()
model.fit(X_train, y_train)
# 测试模型
accuracy = model.score(X_test, y_test)
print("生还预测模型准确率:", accuracy)
# 加载测试数据
test_data = pd.read_csv('test.csv')
# 数据预处理
test_data = test_data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1)
test_data['Sex'] = test_data['Sex'].map({'female': 0, 'male': 1})
test_data = test_data.fillna(0)
# 进行预测
predictions = model.predict(test_data)
# 将预测结果保存到CSV文件中
submission = pd.DataFrame({'PassengerId': pd.read_csv('test.csv')['PassengerId'], 'Survived': predictions})
submission.to_csv('predictions.csv', index=False)
```
这段代码使用随机森林分类器来训练和预测泰坦尼克号乘客的生还情况。首先,加载并预处理训练数据,剔除无关特征并将性别转换为数值表示。然后,将数据划分为训练集和测试集。接下来,使用训练集训练模型,并通过测试集评估模型的准确率。然后,加载并预处理测试数据,并进行预测。最后,将预测结果保存到CSV文件中。