R で complete.cases を使用する方法 (例あり)
R のcomplete.cases()関数を使用すると、ベクトル、行列、またはデータ フレーム内の欠損値を削除できます。
この関数は次の基本構文を使用します。
#remove missing values from vector x <- x[complete. boxes (x)] #remove rows with missing values in any column of data frame df <- df[complete. boxes (df), ] #remove rows with NA in specific columns of data frame df <- df[complete. cases (df[, c(' col1 ', ' col2 ', ...)]), ]
次の例は、この関数を実際に使用する方法を示しています。
例 1: ベクトルから欠損値を削除する
次のコードは、ベクトルからすべての NA 値を削除する方法を示しています。
#definevector x <- c(1, 24, NA, 6, NA, 9) #remove NA values from vector x <- x[complete. boxes (x)] x [1] 1 24 6 9
例 2: データ フレームの任意の列で NA の行を削除する
次のコードは、データ フレームの任意の列で NA 値を持つ行を削除する方法を示しています。
#define data frame df <- data. frame (x=c(1, 24, NA, 6, NA, 9), y=c(NA, 3, 4, 8, NA, 12), z=c(NA, 7, 5, 15, 7, 14)) #view data frame df X Y Z 1 1 NA NA 2 24 3 7 3 NA 4 5 4 6 8 15 5 NA NA 7 6 9 12 14 #remove rows with NA value in any column data frame df <- df[complete. boxes (df), ] #view data frame df X Y Z 2 24 3 7 4 6 8 15 6 9 12 14
例 3: データ フレームの特定の列にある NA の行を削除する
次のコードは、データ フレームの特定の列にある NA 値を持つ行を削除する方法を示しています。
#define data frame df <- data. frame (x=c(1, 24, NA, 6, NA, 9), y=c(NA, 3, 4, 8, NA, 12), z=c(NA, 7, 5, 15, 7, 14)) #view data frame df X Y Z 1 1 NA NA 2 24 3 7 3 NA 4 5 4 6 8 15 5 NA NA 7 6 9 12 14 #remove rows with NA value in y or z column df <- df[complete. cases (df[, c(' y ', ' z ')]), ] #view data frame df X Y Z 2 24 3 7 3 NA 4 5 4 6 8 15 6 9 12 14