pandas dataframe 如何把带有千位分隔符的字符串转化为浮点数

 我来答
ZXand618
2018-11-29 · ECharts、Python、以及其他
ZXand618
采纳数:97 获赞数:140

向TA提问 私信TA
展开全部

你看这样能满足需要吗?

代码如下

import pandas as pd
test = pd.DataFrame({'A': ['1,232.1', '22,332.3', '3,232', '1,111,111']})
print(type(test.loc[0,'A']))
test1 = pd.DataFrame({}).append(test)
 
test1['A'] = test1['A'].apply(lambda x: "".join(x.split(','))).astype('float')
print(type(test1.loc[0,'A']))
追问
你的答案很好,我其实在当天就自己解决了,但是能看到你的答案,我很高兴,谢谢!
以下是我的解决方法,希望能给我提点改进的建议
df['浏览量(PV)'] = df.loc[:, '浏览量(PV)'].apply(lambda x: float(x.replace(",", "")) if "," in x else float(x))
追答

建议不敢当,我也在学习中,个人觉得没必要判断  if "," in x

df['浏览量(PV)'] = df.loc[:, '浏览量(PV)'].apply(lambda x: float(x.replace(",", "")))
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式