ホームページ >バックエンド開発 >Python チュートリアル >ループを使用せずに Pandas DataFrame の NaN 値を効率的に置換するにはどうすればよいですか?
Pandas DataFrame でのループフリー NaN 置換
Pandas DataFrame での NaN 値の置換は一般的なタスクとなる場合があります。 1 つのアプローチは、NaN をその上の最初の非 NaN 値に繰り返し置き換えることです。ただし、このメソッドは非効率的で、エラーが発生しやすい可能性があります。
幸いなことに、Pandas には、fillna メソッドを使用してこれを実現する、より効率的でループのない方法が用意されています。メソッドを「ffill」(フォワード フィル) として指定すると、Pandas は最後の有効な観測値を次の有効な観測値に伝播します:
import pandas as pd df = pd.DataFrame([[1, 2, 3], [4, None, None], [None, None, 9]]) df.fillna(method='ffill')
これにより、次の DataFrame:
0 1 2 0 1 2 3 1 4 2 3 2 4 2 9fillna メソッドでは、「bfill」(後方充填)を使用した後方充填(下からの充填)も可能ですmethod:
df.fillna(method='bfill')デフォルトでは、fillna メソッドは元の DataFrame をインプレースで変更しません。元の DataFrame を変更するには、inplace=True: を指定します。
以上がループを使用せずに Pandas DataFrame の NaN 値を効率的に置換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。