私はさまざまなCSVファイルを持っており、それらをDataFrameとしてインポートします。問題は、多くのファイルが欠損値に対して異なるシンボルを使用していることです。いくつかはNa、他のNaN、ND、None、Missingなどを使用するか、空のエントリだけを使用します。これらの値をすべてnp.nanに置き換える方法はありますか?つまり、データフレーム内の数値以外の値はnp.nanになります。お手伝いありがとう。私は私が何を考えていpandasデータフレームの非数値項目をNaNに置き換えるにはどうすればいいですか?
6
A
答えて
4
が比較的エレガントなだけでなく、強力な方法である:
def isnumber(x):
try:
float(x)
return True
except:
return False
df[df.applymap(isnumber)]
場合、それは明確ではありません:あなたは、あなたが持っているものは何でも入力がfloatに変換できる場合にのみ、True
を返す関数を定義します。そのブール値のデータフレームでdf
をフィルタリングします。このブール値フレームは、フィルタリングしなかったセルに自動的にNaN
を割り当てます。私が試した
別の解決策は、
import number
def isnumber(x):
return isinstance(x, number.Number)
としてisnumber
を定義することでしたが、私はそのアプローチはあまり気に入っているあなたが誤ってそれらを除外するだろうので、あなたが誤って、文字列として番号を持つことができることです。これはまた、データフレームが数字99
と同じ文字列を表示することを知っている間違ったエラーです。
EDIT:
あなたのケースでは、おそらくまだ'nan'
のすべての異なる大文字表記上のfloat
作品という理由で、フィルタリング後のdf = df.applymap(float)
する必要がありますが、あなたは明示的に彼らはまだ文字列で考慮されますそれらを変換するまでデータフレーム
+1
洗練されたソリューション – user6566438
関連する問題
- 1. PandasデータフレームでNaNの値の範囲を置き換えるにはどうすればいいですか?
- 2. NaN値をpandas pythonで他のデータフレームに置き換える
- 3. pandas Dataframeで非整数値を置き換えるにはどうすればいいですか?
- 4. pandas DataFrameの前の値でNaNを置き換えるには?
- 5. リスト内の項目を変数に置き換えるにはどうすればよいですか?
- 6. パンダのデータフレームで複数の値を置き換えるにはどうすればいいですか?
- 7. 文字列内の複数の項目を置き換えるにはどうすればよいですか?
- 8. 他のデータフレームのデータフレームの値をPandasに置き換えます
- 9. テキストファイルの数値を大きい数値に置き換えるにはどうすればよいですか?
- 10. データフレーム列の値を単一の値に置き換えるにはどうすればよいですか?
- 11. データフレームの特定の値をRのNAに置き換えるにはどうすればよいですか?
- 12. データフレーム内の値をRの文字列に置き換えるにはどうすればよいですか?
- 13. pandasを使用して、異なるランダム値を持つ列のすべてのNaNを置き換えるにはどうすればよいですか?
- 14. Pandas csv NaNの値が左側の列に置き換えられます
- 15. データフレーム内のNaNインデックス値を置き換えます。
- 16. javascript変数の値をフォームフィールドに置き換えるにはどうすればいいですか?
- 17. R:名前のリストをデータフレームのリストで置き換えるにはどうすればいいですか?
- 18. NaNを非数値オブジェクトの中で最も近い値に置き換えますか?
- 19. 戻り値を関数に置き換えるにはどうすればいいですか?
- 20. パンダのデータフレームの特殊文字を置き換えるにはどうすればいいですか?
- 21. pandasデータフレームの連続したデータ行をNaN行にフィルタリングするにはどうすればよいですか?
- 22. パンダのデータフレームでNaNを可変型に置き換える
- 23. ランダム値を関数値で置き換えるにはどうすればよいですか?
- 24. ブール型マスクを使用してpandas DataFrameの 'any strings'をnanに置き換えるにはどうすればいいですか?
- 25. Asp.Netコアコンフィグレーションマネージャを置き換えるにはどうすればいいですか
- 26. クエリパラメータを置き換えるにはどうすればいいですか?
- 27. 要素を置き換えるにはどうすればいいですか?
- 28. offcanvasイメージを置き換えるにはどうすればいいですか?
- 29. すべての非シーケンシャルGUIDをシーケンシャルGUIDで置き換えるにはどうすればいいですか?
- 30. Pandas DataFrameの空のリストの値をNaNに置き換えます
'read_csv'は' na_value'引数を受け取ります。可能なna値のリストを渡すことができます。そうでなければ、dfの 'to_numeric(errors = 'coerce')'を呼び出すことができます – EdChum
関連項目:http:// stackoverflow .com/questions/15891038 /後処理オプションのためのpandas-change-data-type-of-columns – EdChum
ありがとうEdChym、これは役に立ちます。 – user6566438