[解決済み] パンダです。ValueError: float の NaN を整数に変換できない
2022-03-01 11:33:44
質問
私は ValueError: float NaN を整数に変換できません。 は以下の通りです。
df = pandas.read_csv('zoom11.csv')
df[['x']] = df[['x']].astype(int)
- x"は、明らかにcsvファイルのカラムです。 フロートNaN というのはどういう意味なのでしょうか?
- カラムを文字列として読むと、-1,0,1,...2000のような値があり、私にはすべてとても素敵なint型数値に見えます。
- floatとして読み込むと、読み込むことができます。すると、-1.0,0.0などの値が表示されますが、NaNは表示されません。
- で試してみました。 error_bad_lines = False とする。 とread_csvのdtypeパラメータを指定しても効果がありません。同じ例外が発生して読み込みがキャンセルされるだけです。
- ファイルは小さくない(10M行以上)ので、手動で検査することはできません。小さなヘッダー部分を抽出すると、エラーは発生しませんが、ファイル全体では発生します。つまり、ファイルの中に何かあるのですが、それが何なのかがわかりません。
- 論理的にはcsvに欠損値はないはずですが、たとえゴミがあったとしても、その行をスキップしても構わないと思っています。しかし、ファイルをスキャンして、変換エラーを報告する方法が見当たりません。
更新:コメント/回答のヒントを使用して、私はこれで私のデータをきれいにしました。
# x contained NaN
df = df[~df['x'].isnull()]
# Y contained some other garbage, so null check was not enough
df = df[df['y'].str.isnumeric()]
# final conversion now worked
df[['x']] = df[['x']].astype(int)
df[['y']] = df[['y']].astype(int)
解決方法は?
識別のために
NaN
の値を使用します。
boolean indexing
:
print(df[df['x'].isnull()])
次に、数値以外の値をすべて削除するには
to_numeric
をパラメータとする
errors='coerce'
- に置き換えることで、数値以外を
NaN
s:
df['x'] = pd.to_numeric(df['x'], errors='coerce')
そして、すべての行を削除するために
NaN
の列の
x
使用
dropna
:
df = df.dropna(subset=['x'])
最後に値を変換して
int
s:
df['x'] = df['x'].astype(int)
関連
-
ピロウズ画像色処理の具体的な活用方法
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
Pythonショートビデオクローラーチュートリアル
-
Pythonの画像ファイル処理用ライブラリ「Pillow」(グラフィックの詳細)
-
[解決済み】ImportError: bs4という名前のモジュールがない(BeautifulSoup)
-
[解決済み] Pandas DataFrameの特定の列の値がNaNである行を削除する方法
-
[解決済み] pandasを使った "大量データ "ワークフロー【終了しました
-
[解決済み] 辞書のリストをpandasのDataFrameに変換する
-
[解決済み】NumPyかPandasか。NaNを持ちながら配列の型を整数に保つ
-
[解決済み] pandas.read_csvが空の値をnanではなく空文字列として読み込むようにする。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PythonによるLeNetネットワークモデルの学習と予測
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
Python入門 openを使ったファイルの読み書きの方法
-
Pythonショートビデオクローラーチュートリアル
-
FacebookオープンソースワンストップサービスpythonのタイミングツールKats詳細
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み】Python regex AttributeError: 'NoneType' オブジェクトに 'group' 属性がない。
-
[解決済み] データ型が理解できない
-
[解決済み】Python - "ValueError: not enough values to unpack (expected 2, got 1)" の修正方法 [閉店].
-
[解決済み】Flaskのテンプレートが見つからない【重複あり