kaggle项目-泰坦尼克存活预测
此文代码都是在Jupyter notebook运行的;
主要步骤:
- 1.数据获取 ;2. 数据预处理 ;3. 数据集拆分 ;4. 特征工程–无量钢化 ;5. 算法–模型 ;6. 模型评估;7. 最终预测
由于博主目前只学习了KNN算法,所以本次就用KNN算法实现预测。
1) 获取数据
train_data=pd.read_csv('./train.csv')
train_data.info()
从上面的代码块可以看到训练集数据是有空值的,后续数据预处理要处理掉空值以及非数值字段的数据
2)数据预处理
# 使用均值填充Age列
train_data['Age']=train_data['Age'].fillna(train_data['Age'].mean())
# 使用Unknown填充Cabin(客舱)列
train_data['Cabin'].fillna('Unknown',inplace=True)
# 使用众数填充Embarked(上岸地)列
train_data['Embarked'].fillna(train_data['Embarked'].dropna().mode()[0],inplace=True)
## 前期对数据摸索后,决定本次特征不要PassengerId、Name、Ticket、Cabin
# 对需要的Sex字段和Embarked赋值(此处数据离散化可以使用get_dummies将类别列变成one-hot编码,为了简单,博主暂时不用(高傲笑哭脸))
train_data.loc[train_data['Sex']=='male','Sex']=0
train_data