动手学数据分析2

先导入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))

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值