场景:在使用python进行数据格式转换时,想将利用正则表达式取出的一列值转换为float格式,转换前检查该列的格式是object
1:原格式查看
in: data1['coupon_money'].dtype
out: dtype('O')
2:转换
in: data1['coupon_money']=float(data1['coupon_money'])
out: TypeError: cannot convert the series to
解决过程:解决该问题时走了很多弯路,尝试了很多方法进行转换,最后都没有成功,最后根据报错,是数据里有series,所以转而寻找数据里的series。
解决方案:在该列里使用value_counts发现,数据里有空值,该空值比较特殊,既不是None,也不是Null,而是一个空格
in: data1['coupon_money'].value_count()
out: 1 12
143
2 45
数量为143的值就是报错点,找到这些值后删除这些行,再进行转换就可以了