先导入numpy和pandas,为避免列省略先在前设置展开全部列 #数据过大时行列会省略
#数据过大时行列会省略
pd.set_option('display.max_column',None)#显示消失的列
读取文件
df=pd.read_csv('train.csv')
对缺失值进行处理
法1
df[df['Age']==None]=0
print(df.head(3))
法2
df[df['Age'].isnull()]=0
print(df.head(3))
法3
df[df['Age']==np.nan]=0
print(df.head(3))
因为数值列读取数据后,空缺值的数据类型为float64,所以用None一般索引不到,比较的时候最好用np.nan
DataFrame中dropna用于删除缺失值
DataFrame. dropna(axis=0, how=’any’, thresh=None, subset=None, inplace=False )
#dropha用于删除缺失值,默认删除行
print(df.dropna().head(3))
#fillna用于替换缺失值
print(df.fillna(0).head(3))#用0替代
查看数据中的重复值
#查看数据中的重复值
print(df[df.duplicated()])
将连续变量Age平均分箱成5个年龄段,并分别用类别变量12345表示
#将连续变量Age平均分箱成5个年龄段,并分别用类别变量12345表示
df['AgeBand']=pd.cut(df['Age'],5,labels=[1,2,3,4,5])
print(df.head())
将连续变量Age划分为(0,5] (5,15] (15,30] (30,50] (50,80]五个年龄段,并分别用类别变量12345表示
#将连续变量Age划分为(0,5] (5,15] (15,30] (30,50] (50,80]五个年龄段,并分别用类别变量12345表示
df['AgeBand'] = pd.cut(df['Age'],[0,5,15,30,50,80],labels = [1,2,3,4,5])
print(df.head(3))
Original: https://blog.csdn.net/hxchuadian/article/details/122480021
Author: hxchuadian
Title: 动手学数据分析2
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/678253/
转载文章受原作者版权保护。转载请注明原作者出处!