1. ホーム
  2. python

[解決済み] float64とpandas to_csv

2022-09-24 01:20:16

質問

以下のような浮動小数点数のCSVを読み込んでいます。

Bob,0.085
Alice,0.005

そして、データフレームにインポートし、このデータフレームを新しい場所に書き出します。

df = pd.read_csv(orig)
df.to_csv(pandasfile)

では、この pandasfile は持っています。

Bob,0.085000000000000006
Alice,0.0050000000000000001

float32など別の型にキャストしなければならないのでしょうか?

私は pandas 0.9.0 numpy 1.6.2 .

どのように解決するのですか?

コメントにもあるように、一般的な浮動小数点数の問題です。

しかし、あなたは float_format のキーワードは to_csv を使って隠します。

df.to_csv('pandasfile.csv', float_format='%.3f')

または、0.0001を0に丸めないようにする場合。

df.to_csv('pandasfile.csv', float_format='%g')

が与える。

Bob,0.085
Alice,0.005

を出力ファイルに追加してください。

の説明のために %g を参照してください。 フォーマット仕様ミニ言語 .