繁体   English   中英

将列类型“对象”转换为浮点数

[英]convert a column type 'object' to float

我的df中有一列数字(类型'object'):

1

2,23

5,23

200

我尝试使用 astype 进行转换,但一个错误告诉我他们无法使用逗号进行转换,所以我尝试使用

df[column].str.replace(',','.', inplace=True)

但结果将所有不带逗号的值转换为 NaN..

所以我尝试了另一种解决方案:

mask=df[column].str.contains(',',na=false) 
df.loc[mask].str.replace(',','.',inplace=True)

但是一条错误消息告诉我 dataframe 没有 str function,我该怎么办?

我已经尝试过df[column] = df[column].str.replace(',','.').astype(float)对我来说很好。

我找到了分享的解决方案:

mask=df[column].str.contains(',',na=False)
df[column]=df[column].mask(mask,df[column].str.replace(',','.'))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM