我在DF中有以下专栏。我怎么能将此列转换为5位小数的float(13,5)。字符串长度始终为18个字符。解决方法是,我使用了字符串拆分功能并加入了返回值。

df=pd.DataFrame(['+00000030454360000','-00000030734250000','-00000004643685000'],columns=['qty'])
print df.qty.str[:13]+'.'+df.qty.str[13:]


预期产量

                    0
0  +304543.6
1  -307342.5
2  -46436.85

最佳答案

尝试这个:

In [23]: pd.to_numeric(df.qty, errors='coerce') / 10**5
Out[23]:
0    304543.60
1   -307342.50
2    -46436.85
Name: qty, dtype: float64

关于python - Pandas -将String类型转换为Float,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42074308/

10-12 19:38