0
私は数値でなければならない値のリストを持っています。今、彼らはしかし、オブジェクトです:オブジェクトをintに変換します
later object
opstarten object
dtype: object
私がやっによってSTR型に列を変更しようとしました:
df_analyse_num[["later"]] = df_analyse_num[["later"]].astype(str)
これは私が私のタイプそれを分析する場合が起こす動作するようには思えませんまだオブジェクトと言います。
また、私はそれを文字列に変換しようとすると何かがうまくいかない。私が行う場合:これはうまくいかない
File "pandas\lib.pyx", line 937, in pandas.lib.astype_intsafe (pandas\lib.c:16667)
File "pandas\src\util.pxd", line 60, in util.set_value_at (pandas\lib.c:67540)
ValueError: invalid literal for int() with base 10: '30.0'
任意の考え:
df_analyse_num[["later"]] = df_analyse_num[["later"]].astype(str).astype(int)
それは私に次のエラーを与えますか?
ないパンダの専門家が、 'その後、int'をfloat''てみてください:: '
は、結果を期待しますsomething.astype(str).astype(float).astype(int) ' –
本当にありがとう! –
第1に、 'object'はこれが正しいnumpyオブジェクト型を参照しています。パンダの' dtype'として 'str'が見えず、列を数値に変換したい場合は' pd.to_numeric(df_analyse_num ["後で"]、errors = 'coerce')'これは適切な型を推論します。欠落値がないところでは 'int'を返し、そうでなければすべての値を' int'に変換します。 'df_analyse_num [[" later "]]'は、あなたが知らなかった場合のシリーズではなく、単一の列dfを返します – EdChum