相关疑难解决方法(0)

用pandas DataFrame中的逗号将数字字符串转换为float

我有一个DataFrame包含数字作为字符串与数千标记的逗号.我需要将它们转换为浮点数.

a = [['1,200', '4,200'], ['7,000', '-0.03'], [ '5', '0']]
df=pandas.DataFrame(a)
Run Code Online (Sandbox Code Playgroud)

我猜我需要使用locale.atof.确实

df[0].apply(locale.atof)
Run Code Online (Sandbox Code Playgroud)

按预期工作.我得到了一系列花车.

但是当我将它应用于DataFrame时,我收到一个错误.

df.apply(locale.atof)
Run Code Online (Sandbox Code Playgroud)

TypeError :("无法将系列转换为",在索引0处发生')

df[0:1].apply(locale.atof)
Run Code Online (Sandbox Code Playgroud)

给出另一个错误:

ValueError :('float()的无效文字:1,200',u'occurred在索引0')

那么,我如何将这个DataFrame字符串转换为浮动的DataFrame?

python pandas

59
推荐指数
3
解决办法
5万
查看次数

标签 统计

pandas ×1

python ×1