いくつかの山車(いくつかの短いいくつかの長い)文字列へとなって予期しない結果(?):損失パンダに文字列にフロートを変換しながら、私はPythonで変換しています
ケース1
pd.options.display.float_format = '{:.2f}'.format
pd.DataFrame({'x': [12345.67]})
x
0 12345.67
ケース2
pd.DataFrame({'x': [1234589890808980.67]})
x
0 1234589890808980.75
ケース3
pd.DataFrame({'x': [1234589890878708980.67]})
x
0 1234589890878708992.00
私もなく、無駄のない、dtypes とnp.longdouble
を試してみました。
誰かがここで起こっていることを説明してください。ケース2と3で「適切な」変換が可能ですか?
ありがとうございます!
これは実際に機能しました!しかし、このメソッドが正常に動作するためには、値が最初の文字列でなければならないことを正しく理解していますか? 'csv'ファイルからフロートを読み込むとどうなりますか? –
@SergeyBushmanov私はちょうど答えが更新された。 – starrify
ありがとうございます、あなたの提案に絶対に同意してください(すでにいくつか試したこともあります)。知識があれば 'np.float128'や' np.longdouble'を使って精度を上げる方法はありますか?何らかの理由で私の試みが失敗した.... –