3
私は、Mysqlテーブルを読み込むためにパンダを使用すると、整数であったいくつかのカラム(「to_nlc」を参照)が浮動小数点数になりました。 誰でもそれを把握できますか?またはいくつかの推測?どうもありがとう!パンダがSQL整数を浮動小数点に変換
私は、Mysqlテーブルを読み込むためにパンダを使用すると、整数であったいくつかのカラム(「to_nlc」を参照)が浮動小数点数になりました。 誰でもそれを把握できますか?またはいくつかの推測?どうもありがとう!パンダがSQL整数を浮動小数点に変換
問題はそうint
を自動的float
にキャストされ、データがNaN
値が含まれています。
:
REINDEXまたはいくつかの他の手段を介して既存のシリーズまたはデータフレームへのNAを導入する場合、ブール型と整数型は、NASを保存するために、異なるDTYPEに昇格されます。これらは、この表で要約されている:これは実際に私は、これは実際に問題である非常に少数の例を発見した、重いトレードオフのように見えるかもしれません
Typeclass Promotion dtype for storing NAs
floating no change
object no change
integer cast to float64
boolean cast to object
ながら。ここでの動機づけについては、次のセクションで説明します。
どのようにこれを回避できますか?浮動小数点へのキャストが精度エラーを引き起こすように、整数が識別子として使用されます。 –
@ HananShteingart - 'NaN'を' 0'に置き換えることは可能ですか? 'df [' colname '] = df [' colname ']のようなものですか?fillna()。astype(int) 'または' df = df.fillna(0).astype(int) '? – jezrael
私はすでにSQLからfloatとして取得しています。私がしたのは、SQLクエリの列に列をキャストすることです。 CAST(bigint_column AS VARCHAR)ので、データフレーム内の文字列として取得します。とにかく列がIDを表しているので、数値ではないことは気にしませんでした。 –