場景:在使用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 <class 'float'>
解決過程:解決該問題時走了很多彎路,嘗試了很多方法進行轉換,最後都沒有成功,最後根據報錯,是數據裏有series,所以轉而尋找數據裏的series。
解決方案:在該列裏使用value_counts發現,數據裏有空值,該空值比較特殊,既不是None,也不是Null,而是一個空格
in: data1['coupon_money'].value_count()
out: 1 12
143
2 45
數量爲143的值就是報錯點,找到這些值後刪除這些行,再進行轉換就可以了