パンダ: 特定の列で dropna() を使用する方法
サブセット引数を指定してDropna()関数を使用すると、特定の列に欠損値を含む行を pandas DataFrame から削除できます。
この機能を実際に使用する最も一般的な方法は次のとおりです。
方法 1: 特定の列に欠損値がある行を削除する
df. dropna (subset = [' column1 '], inplace= True )
方法 2: いくつかの特定の列の 1 つで欠損値のある行を削除する
df. dropna (subset = [' column1 ', ' column2 ', ' column3 '], inplace= True )
次の例は、次の pandas DataFrame で各メソッドを実際に使用する方法を示しています。
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, np.nan, 19, 14, 14, 11, 20, 28], ' assists ': [5, np.nan, np.nan, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, np.nan]}) #view DataFrame print (df) team points assists rebounds 0 A 18.0 5.0 11.0 1 B NaN NaN 8.0 2 C 19.0 NaN 10.0 3D 14.0 9.0 6.0 4 E 14.0 12.0 6.0 5 F 11.0 9.0 5.0 6G 20.0 9.0 9.0 7H 28.0 4.0 NaN
例 1: 特定の列に欠損値がある行を削除する
次の構文を使用して、「assistions」列の値が欠落している行を削除できます。
#drop rows with missing values in 'assists' column df. dropna (subset = [' assists '], inplace= True ) #view updated DataFrame print (df) team points assists rebounds 0 A 18.0 5.0 11.0 3D 14.0 9.0 6.0 4 E 14.0 12.0 6.0 5 F 11.0 9.0 5.0 6G 20.0 9.0 9.0 7H 28.0 4.0 NaN
「Assists」列の値が欠落している 2 つの行は両方とも DataFrame から削除されていることに注意してください。
また、データフレームの最後の行は、欠損値がある場合でも保持されることに注意してください。これは、欠損値が「helps」列にないためです。
例 2: いくつかの特定の列の 1 つに欠損値がある行を削除する
次の構文を使用して、「points」列または「bounces」列に欠損値がある行を削除できます。
#drop rows with missing values in 'points' or 'rebounds' column df. dropna (subset = [' points ', ' rebounds '], inplace= True ) #view updated DataFrame print (df) team points assists rebounds 0 A 18.0 5.0 11.0 2 C 19.0 NaN 10.0 3D 14.0 9.0 6.0 4 E 14.0 12.0 6.0 5 F 11.0 9.0 5.0 6G 20.0 9.0 9.0
「points」列または「bounces」列に欠損値がある 2 つの行が DataFrame から削除されていることに注意してください。
注: pandas dropna()関数の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、パンダで他の一般的なタスクを実行する方法を説明します。
パンダ:dropna() を使用した後にインデックスをリセットする方法
Pandas: NaN 値を含む列を削除する方法
Pandas: 複数の条件に基づいて行を削除する方法