2017-11-18 8 views
2

1524.449677などの数値を含むCSVファイルがあります。常に正確に小数点以下6桁があります。浮動小数点値を持つcsvファイルをパンダで読み取ると、奇妙な丸めと小数点が返されます

パンダread_csvでcsvファイル(および他の列)をインポートすると、その列は自動的にデータ型objectを取得します。私の問題は、値が2470.691137である2470.6911370000003と表示されていることです。値2484.306912484.3069100000002と表示されます。

これは何らかの形でデータ型の問題のようです。 read_csvでインポートするときに、dtype引数に{'columnname': np.float64}と指定して、データ型を明示的に指定しようとしました。それでも問題は解決しなかった。

インポートした値をソースcsvファイルにあるとおりに表示するにはどうすればよいですか?

+0

df ['col'] = df ['col'] .stat(float) 'はどうしますか? –

+0

は何も変更しません – beta

答えて

2

パンダは、専用のdec 2 binコンバータを使用して、スピード優先の精度を低下させます。

float_precision='round_trip'からread_csvにこれを渡します。

詳細はthis pageをご覧ください。

関連する問題