2017-10-15 87 views
3

簡單的問題:我有一個數據集,從csv文件導入,包含一個帶有數字值的字符串列。逗號後有小數位。將字符串轉換爲浮動熊貓

我想轉換爲浮動。基本上,它只是這樣的:

x = ['27,10083'] 
df = pd.DataFrame(x) 
df.astype(float) 

爲什麼這不起作用,以及如何解決這個簡單的問題?

在此先感謝。

回答

3

分配輸出與replace

df = df.replace(',','.', regex=True).astype(float) 

如果要用於變換指定列:

cols = ['col1','col2'] 
df[cols] = df[cols].replace(',','.', regex=True).astype(float) 

另一種解決方案是使用參數decimal=','read_csv,然後列正確解析到浮子:

df = pd.read_csv(file, decimal=',') 
+0

非常感謝,用小數= ','在csv導入,很好。 –