显示数据信息后,您可以继续估算年龄列。您可以通过用总体平均值填充空值来执行此操作,也可以找到每个乘客类别的平均年龄值。
def impute_age_passenger_class(data):
Age = data[0]
PClass = data[2]
if pd.isnull(AgeP):
if Pclass == 1:
return 37
elif Pclass == 2:
return 29
else:
return 24
else:
return Age
那么(假设数据集存储在名为“train”的数据框中):
train['Age'] = train[['Age','Pclass']].apply(impute_age,axis=1)
您还可以将分类值转换为数据集中的虚拟变量:
sex = pd.get_dummies(train['Sex'],drop_first=True)
embark = pd.get_dummies(train['Embarked'],drop_first=True)
train.drop(['Sex','Embarked','Name','Ticket'],axis=1,inplace=True)
train = pd.concat([train,sex,embark],axis=1)