Dplyr を使用して複数の列を削除する方法 (例あり)


dplyrパッケージを使用して、R のデータ フレームから複数の列を削除するには、次のいずれかの方法を使用できます。

1. 複数の列を名前で削除します。

 df_new <- df %>% select(-c(col2, col4))

2. 範囲からすべての列を削除します

 df_new <- df %>% select(-c(col2:col4))

次の例は、次のデータ フレームでこれらの各メソッドを実際に使用する方法を示しています。

 #create data frame
df = data. frame (rating = c(90, 85, 82, 88, 94, 90, 76, 75, 87, 86),
                points=c(25, 20, 14, 16, 27, 20, 12, 15, 14, 19),
                assists=c(5, 7, 7, 8, 5, 7, 6, 9, 9, 5),
                rebounds=c(11, 8, 10, 6, 6, 9, 6, 10, 10, 7))

#view data frame
df

   rating points assists rebounds
1 90 25 5 11
2 85 20 7 8
3 82 14 7 10
4 88 16 8 6
5 94 27 5 6
6 90 20 7 9
7 76 12 6 6
8 75 15 9 10
9 87 14 9 10
10 86 19 5 7

例 1: 複数の列を名前で削除する

次のコードは、 pointsbouncesという名前の列をデータ フレームから削除する方法を示しています。

 library (dplyr)

#drop points and rebounds columns
df_new <- df %>% select(-c(points, rebounds))

#view new data frame
new_df

   rating assists
1 90 5
2 85 7
3 82 7
4 88 8
5 94 5
6 90 7
7 76 6
8 75 9
9 87 9
10 86 5

ポイントバウンスという名前の列は両方とも新しいデータ フレームから削除されていることに注意してください。

例 2: 範囲からすべての列を削除します。

次のコードは、ポイント列バウンス列の間のすべての列を削除する方法を示しています。

 library (dplyr)

#drop all columns between points and rebounds
df_new <- df %>% select(-c(points:rebounds))

#view new data frame
new_df

   rating
1 90
2 85
3 82
4 88
5 94
6 90
7 76
8 75
9 87
10 86

ポイントバウンス間のすべての列が新しいデータ フレームから削除されていることに注意してください。

: R のMASSパッケージにもselect()関数があります。このパッケージもロードされている場合は、 dplyr::select() を使用して、R がdplyrパッケージのselect()関数を使用することを認識できるようにする必要があります。

追加リソース

次のチュートリアルでは、dplyr で他の一般的な機能を実行する方法を説明します。

dplyrを使用してインデックスによって列を選択する方法
dplyr を使用して複数の列の名前を変更する方法
dplyrを使用して列内の文字列を置換する方法

コメントを追加する

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