[英]pandas.to_csv not displaying floating point values to 2-digits after the decimal place
[英]Pandas.to_csv() decimal parameter
我不得不將大量的熊貓dfs導出到csv文件中。 dfs包含數值作為浮點數(浮點數64)
df.to_csv('df.csv', sep = ";", decimal = ",", encoding = "utf-8", index = False)
我學到了一種很難的方法,那就是指定小數字符作為參數(decimal =“,”)而不是“。”非常重要。 如果使用歐洲數據/數字,則為defaut參數。 這導致我將數字格式化為字符串,而不是浮點數(不能再使用浮點數),例如:
“7.48E + 17”
調試代碼和查找錯誤花了幾個小時。
為什么這么疼? 我怎么知道數據是歐洲風格還是美國風格?
您是否使用Excel? 您要解決的問題到底是什么:格式為“ 7.48E + 17”還是字符串?
如果格式出現問題:那么,據我所知,像“ 7.48E + 17”這樣的格式是Excel的問題(如果使用的話)。 此外,Excel對單元格的長度有限制(請在此處查看 )
我試圖用浮點格式保存csv,而且還可以。 我用了引號:據我了解,它可以幫助您將所有非數字值轉換為字符串。
df = pd.DataFrame([[12.12412412421410000,1.247518274658710000, 9.908098210849, 2.19870912870918, 1.2871287012 ],
[12.12412412421410000,1.247518274658710000, 9.908098210849, 2.19870912870918, 1.2871287012 ]])
df.to_csv('df.csv', decimal='.',
header=None, index=False ,
quoting=csv.QUOTE_NONNUMERIC, encoding='utf8')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.