python_字段类型转换&类型替换

字段类型转换 替换

############################################################
#判断字段类型
print('Distance 类型:',dfoff['Distance'].unique())
type(dfoff['Distance'].unique()[2])
dfoff['Distance'].unique()[2] == np.nan
type(np.nan)
##将float类型变换为int类型
#1.将nulL值填充为0  填充为null
dfoff['Date_received']=dfoff['Date_received'].fillna(0)
#加了引号相当于字符,不要加
dfoff['distance'] = dfoff['Distance'].fillna(-1)
dfoff['Date_received']=dfoff['Date_received'].fillna('null')
#2.0 转换类型 替换

#把数据中的null值全部替换为-1
t4.replace('null',-1,inplace=True)
t4.distance = t4.distance.astype('int')
#再把数据中的-1全部替换为NaN
t4.replace(-1,np.nan,inplace=True)


dfoff['distance'] = dfoff['Distance'].replace(np.nan, -1)
dfoff['weekday'].replace('null', np.nan)
dfoff['Date_received']=dfoff['Date_received'].astype('int')
#转换为string类型
 dfoff['Date']=dfoff['Date'].astype('str')
#查看某字段下所有数据种类
print('Discount_rate 类型:\n',dfoff['Discount_rate'].unique())
#统计各类型的数量
print(dfoff['label'].value_counts())
#字符拼接 生成列名
weekdaycols = ['weekday_' + str(i) for i in range(1,8)]
###################################################################
#日期字段筛选
off_train = pd.read_csv('C:\data\O2O_tianchi\ccf_offline_stage1_train.csv',header=0)
off_train.head()
off_train.info()
#float类型较难筛选, 可以把日期字段转换为int类型, 不过注意,字段有空值转换会报错,先替换空值
off_train['date']=off_train['Date'].fillna(0)
off_train['date']=off_train['date'].astype('int')
feature3 = off_train[((off_train['date'] >= 20160315)&(off_train.date<=20160630))|((off_train['date']==0)&(off_train['Date_received']>=20160315)&(off_train['Date_received']<=20160630))]
feature3.head()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值