Rの特定の列でnaの行を削除する方法
次の 3 つの方法のいずれかを使用して、R のデータ フレームの特定の列にある NA の行を削除できます。
#use is.na() method df[!is. na (df$col_name),] #use subset() method subset(df, !is. na (col_name)) #use tidyr method library (tidyr) df %>% drop_na(col_name)
これらの各メソッドは同じ結果を生成することに注意してください。
次の例は、次のデータ フレームでこれらの各メソッドを実際に使用する方法を示しています。
#create data frame df <- data. frame (a = c(NA, 14, 19, 22, 26), b = c(14, NA, 9, NA, 5), c = c(45, 56, 54, 57, 59)) #view data frame df ABC 1 NA 14 45 2 14 NA 56 3 19 9 54 4 22 NA 57 5 26 5 59
方法 1: is.na() を使用して NA の行を削除する
次のコードは、 is.na()メソッドを使用して、特定の列に NA 値を持つデータ フレームから行を削除する方法を示しています。
#remove rows from data frame with NA values in column 'b' df[!is. na (df$b),] ABC 1 NA 14 45 3 19 9 54 5 26 5 59
方法 2: subset() を使用して NA の行を削除する
次のコードは、 subset()メソッドを使用して、特定の列に NA 値を持つデータ フレームから行を削除する方法を示しています。
#remove rows from data frame with NA values in column 'b' subset(df, !is. na (b)) ABC 1 NA 14 45 3 19 9 54 5 26 5 59
方法 3: drop_na() を使用して NA で行を削除する
次のコードは、 drop_na()メソッドを使用して、特定の列に NA 値を持つデータ フレームから行を削除する方法を示しています。
library (tidyr)
#remove rows from data frame with NA values in column 'b'
df %>% drop_na(b)
ABC
1 NA 14 45
3 19 9 54
5 26 5 59
3 つの方法のそれぞれが同じ結果を生成することに注意してください。
注:ここで、 drop_na() メソッドの完全なオンライン ドキュメントを見つけることができます。
追加リソース
R のデータ フレームの各行に関数を適用する方法
Rで行番号を取得する方法
R でデータ フレームに行を追加する方法