Rのデータフレームから空白行を削除する方法
次の方法を使用して、R のデータ フレームから空白行を削除できます。
方法 1: すべての列に NA がある行を削除する
df[rowSums(is. na (df)) != ncol(df), ]
方法 2: 少なくとも 1 つの列で NA を含む行を削除する
df[complete. boxes (df), ]
次の例は、各メソッドを実際に使用する方法を示しています。
例 1: すべての列が NA の行を削除する
R に次のデータ フレームがあるとします。
#create data frame df <- data. frame (x=c(3, 4, NA, 6, 8, NA), y=c(NA, 5, NA, 2, 2, 5), z=c(1, 2, NA, 6, 8, NA)) #view data frame df X Y Z 1 3 NA 1 2 4 5 2 3 NA NA NA 4 6 2 6 5 8 2 8 6 NA 5 NA
次のコードを使用して、各列に NA 値を持つ行をデータ フレームから削除できます。
#remove rows with NA in all columns df[rowSums(is. na (df)) != ncol(df), ] X Y Z 1 3 NA 1 2 4 5 2 4 6 2 6 5 8 2 8 6 NA 5 NA
各列の NA 値を含む行が削除されていることに注意してください。
例 2: 少なくとも 1 つの列に NA がある行を削除する
もう一度、R に次のデータ フレームがあると仮定してみましょう。
#create data frame df <- data. frame (x=c(3, 4, NA, 6, 8, NA), y=c(NA, 5, NA, 2, 2, 5), z=c(1, 2, NA, 6, 8, NA)) #view data frame df X Y Z 1 3 NA 1 2 4 5 2 3 NA NA NA 4 6 2 6 5 8 2 8 6 NA 5 NA
次のコードを使用して、少なくとも 1 つの列に NA 値を持つ行をデータ フレームから削除できます。
#remove rows with NA in at least one column
df[complete. boxes (df), ]
X Y Z
2 4 5 2
4 6 2 6
5 8 2 8
少なくとも 1 つの列に NA 値を持つすべての行が削除されていることに注意してください。
関連: R で complete.cases を使用する方法 (例あり)
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。