怎么使用Python进行泰坦尼克号幸存者的数据分析和预测
更新时间:2023-10-11简介
泰坦尼克号是一艘著名的邮轮,于1912年在首航时沉没,造成1500多人丧生。泰坦尼克号的数据集被广泛应用于数据分析和机器学习领域。在这个问题中,我们将使用Python进行泰坦尼克号幸存者的数据分析和预测。
数据加载和探索
首先,我们需要加载泰坦尼克号的数据集,并对数据进行探索,了解数据的基本情况。
# 导入所需的库 import pandas as pd # 从CSV文件中加载数据 data = pd.read_csv('titanic.csv') # 查看前几行数据 print(data.head()) # 查看数据的统计信息 print(data.describe()) # 查看每个特征的缺失值情况 print(data.isnull().sum())
数据清洗和特征工程
在进行数据分析和预测之前,我们需要对数据进行清洗和特征工程,以准备好可供模型使用的数据。
# 填充缺失值 data['Age'].fillna(data['Age'].median(), inplace=True) data['Embarked'].fillna(data['Embarked'].mode()[0], inplace=True) # 创建新特征 data['FamilySize'] = data['SibSp'] + data['Parch'] + 1 data['IsAlone'] = 1 data.loc[data['FamilySize'] > 1, 'IsAlone'] = 0 # 转换分类特征为数值特征 data['Sex'] = data['Sex'].map({'female': 0, 'male': 1}).astype(int) data['Embarked'] = data['Embarked'].map({'S': 0, 'C': 1, 'Q': 2}).astype(int) # 删除不需要的特征 data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1, inplace=True) # 查看数据的特征 print(data.head())
数据建模和预测
现在我们可以使用机器学习算法进行数据建模和预测了。在这里,我们使用随机森林算法来预测幸存者。
# 导入所需的库 from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import train_test_split 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) y_pred = model.predict(X_test) # 计算准确率 accuracy = accuracy_score(y_test, y_pred) print('准确率:', accuracy)
总结
本篇回答了如何使用Python进行泰坦尼克号幸存者的数据分析和预测。通过加载数据、探索数据、数据清洗和特征工程以及数据建模和预测这几个步骤,我们可以对泰坦尼克号的数据进行分析,并使用机器学习算法预测幸存者。这个方法可以帮助我们了解泰坦尼克号幸存者的特征和影响幸存率的因素。