Python 使用十进制分隔符逗号读取csv不会更改所有值

Python 使用十进制分隔符逗号读取csv不会更改所有值,python,pandas,csv,Python,Pandas,Csv,我有一个带有KG列的csv文件,它用十进制分隔符指定为“,”(逗号) 当我使用pd.read_csv(文件名,sep=';',decimal=“,”)时,只有值1,55和2,66分别转换为1.55和2.66。 逗号前有3位数字的值保持不变 这是输出 KG 267,890 458,987 125,888 1.55 2.66 请有人指导我如何将所有值更改为有点,以及如何为列使用dtype as float64此解决方案对我很有帮助,尽管我不明白为什么我没有使用其他方法 f = lambda x:

我有一个带有KG列的csv文件,它用十进制分隔符指定为“,”(逗号)

当我使用
pd.read_csv(文件名,sep=';',decimal=“,”)
时,只有值1,55和2,66分别转换为1.55和2.66。 逗号前有3位数字的值保持不变

这是输出

KG
267,890
458,987
125,888
1.55
2.66

请有人指导我如何将所有值更改为有点,以及如何为列使用dtype as float64

此解决方案对我很有帮助,尽管我不明白为什么我没有使用其他方法

f = lambda x: (x.replace(",",".")) 
input_df = pd.read_csv(file_name, sep=";",converters = {'KG':f})

谢谢

这对我很有效。我写了同样的代码并工作了

>>> df = pd.read_csv("/Users/SO/Desktop/test.csv",sep=';', decimal=",")
>>> df
       KG,
0  267.890
1  458.987
2  125.888
3    1.550
4    2.660
>>> 

在我这方面,它与dtype of
float64
一起工作很好,您使用的是哪个版本的python?你能在这里发布你尝试过的代码吗?我使用的代码与你上面提到的相同,我的pandas版本是
0.24.1
你有哪个pandas版本?
>>> df = pd.read_csv("/Users/SO/Desktop/test.csv",sep=';', decimal=",")
>>> df
       KG,
0  267.890
1  458.987
2  125.888
3    1.550
4    2.660
>>>