R でリストごとの削除を実行する方法 (例あり)


リストごとの削除は、に欠損値があるデータ フレーム内のすべての行を削除する方法です。

R でリストごとの削除を実行する最も簡単な方法は、次の構文を使用することです。

 complete_df <- df[complete. boxes (df), ]

この構文では、 complete.cases()関数を使用して、元のデータ フレームのどの列にも欠損値がない行のみを含む新しいデータ フレームを作成します。

次の例は、この関数を実際に使用する方法を示しています。

例: R でリストごとの削除を実行する

R に、さまざまなバスケットボール選手に関する情報を含む次のデータ フレームがあるとします。

 #create data frame
df <- data. frame (rating=c(70, 75, 75, 78, 81, 85, 89, 91, 94, 97),
                 points=c(12, 15, 14, 13, NA, 29, 24, 18, 20, 25),
                 assists=c(9, 5, NA, 5, 7, 8, 11, 12, 13, 11))

#view data frame
df

   rating points assists
1 70 12 9
2 75 15 5
3 75 14 NA
4 78 13 5
5 81 NA 7
6 85 29 8
7 89 24 11
8 91 18 12
9 94 20 13
10 97 25 11

2 行の一部の列に NA 値が含まれていることに注意してください。

次の構文を使用してリスト単位の削除を実行し、どの列にも欠損値がない行のみを保持できます。

 #create new data frame that only contains rows with no missing values
complete_df <- df[complete. boxes (df), ]

#view new data frame
complete_df

   rating points assists
1 70 12 9
2 75 15 5
4 78 13 5
6 85 29 8
7 89 24 11
8 91 18 12
9 94 20 13
10 97 25 11

この新しいデータ フレームの行には、どの列にも空の値がないことに注意してください。

また、 nrow()関数を使用して、元のデータ フレーム内の列に欠損値がある行の数を判断できることにも注意してください。

 #count how many rows have missing values in any column
nrow(df[ ! complete. cases (df), ])

[1] 2

これは、元のデータ フレームの2行の少なくとも 1 つの列に欠損値があることがわかります。

また、どの列にも欠損値がない行の数を簡単に数えることもできます。

 #count how many rows do not have missing values in any column
nrow(df[complete. cases (df), ])

[1] 8

これは、元のデータ フレームの8行のどの列にも欠損値がないことがわかります。

追加リソース

次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。

Rで欠損値を見つけて数える方法
Rで欠損値を補間する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です