我有一个来自csv文件的值列,其中包含逗号而不是点。使用下面的代码我想把它们变成点,但这不起作用。
没有错误消息,代码只是运行,如果我从数据框Split
调用列Betrag()
(德语:绝对值),则不会显示任何更改。逗号仍然存在。
Umsatz
例如,将7,99转为7.99
答案 0 :(得分:4)
您认为没有变化的原因是因为removecom
没有返回任何内容。您应该从函数中返回一个值,如下所示:
def removecom(value):
return value.replace(',','.')
但是,我推荐的更好的方法是使用df.str.replace
:
Umsatz['Betrag()'] = Umsatz['Betrag()'].str.replace(',', '.')
演示:
In [750]: df
Out[750]:
Col1
0 foo,bar
1 abc,def
In [751]: df['Col1'] = df.Col1.str.replace(',', '.')
In [752]: df
Out[752]:
Col1
0 foo.bar
1 abc.def