我正在尝试将数据帧字段从字符串转换为Pandas中的float。
这是字段:
In:
print(merged['platnosc_total'].head(100))
Out:
0 0,00
1 4,50
2 0,00
3 0,00
4 0,00
5 4,50
6 6,10
7 7,99
8 4,00
9 7,69
10 7,50
请注意最后一行中的7,50,这似乎会导致错误:
In:
merged['platnosc_total'].astype(float)
Out:
ValueError: could not convert string to float: '7,50'
这是否意味着其余部分被转换,只有7,50的行才是原因?
如何将此字段/列实际转换为浮动?
答案 0 :(得分:2)
首先需要replace
:
print (merged['platnosc_total'].replace(',','.', regex=True).astype(float))
0 0.00
1 4.50
2 0.00
3 0.00
4 0.00
5 4.50
6 6.10
7 7.99
8 4.00
Name: platnosc_total, dtype: float64
答案 1 :(得分:0)
如果您的列中有astype(float)
或空白行,则merged.replace('', np.nan).dropna(subset=['platnosc_total'], inplace=True)
merged['platnosc_total'].astype(float)
将不起作用。
您应该尝试
StartDate EndDate NumberofDays
20190916 20191031 ?