在泰坦尼克号(取自Kaggle)的数据集的feature age中有很多缺失值。我们可以通过以下方法来查找这些缺失值:
import pandas as pd
titanic = pd.read_csv("E:/Anaconda/MachineLearningData/Titanic/test.csv") #获取数据集
age = titanic["Age"] #找Age特征
#把age中结果为true的值存在age_is_null中,true为缺失值
#isnull()函数会把age中值为null的部分看作True,非null的地方看作False
age_is_null = age[pd.isnull(age) == True]
print (age_is_null)
省略中间部分......
上面结果的尾部
在计算平均年龄时我们可以去掉没有年龄信息的人。
age_after_shuffle = age[pd.isnull(age) == False]
mean_age = sum(age_after_shuffle)/len(age_after_shuffle)
print (mean_age)
结果
还有个更好的办法,那就是把缺失的用平均年龄来代替来做成一个完整的数据再来计算平均年龄。
mean = titanic_age.mean()