HOWTO · R

Rで列を名前でドロップ

このチュートリアルでは、R のデータフレームから列を名前でドロップする方法を示します。

このページの内容

R の列ドロップ機能を使用して、データ フレームから不要な列を削除できます。R で列を名前でドロップするには、さまざまな方法があります。

このチュートリアルでは、名前を指定してデータ フレームから列を削除するさまざまな方法を示します。

R の dplyr ライブラリを使用して列を名前でドロップする

dplyr ライブラリの select() メソッドを使用して、データ フレームと列をパラメータとしてバイパスする列を削除できます。 このメソッドは、言及した変数を保持します。

dplyr ライブラリを使用して列を削除する段階的なプロセスを以下に示します。

  1. dplyr ライブラリが存在しない場合はインストールします。
  2. dplyr モジュールをインポートします。
  3. データ フレームを作成します。
  4. 次に、削除する列を決定します。
  5. データ フレームを select メソッドに渡し、列名に - マイナス記号を付けます。
  6. 最後に、データ フレームを表示します。

従業員情報のデータ フレームで例を試してみましょう。 まず、dplyr ライブラリをインストールします。

install.packages("dplyr")

ライブラリが正常にインストールされたら、例を実装できます。

library(dplyr)

Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                  LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                  Id=c(101, 102, 103, 104, 105),
                  Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))

print('The dataframe before dropping the column:-')
Delftstack

print('The dataframe after dropping the column:-')
select(Delftstack, -Name)

上記のコードには、Name、LastName、Id、および Designation の 4つの列を持つデータ フレームが含まれています。 Name 列を削除しようとしました。

出力:

[1] "The dataframe before dropping the column:-"
      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

[1] "The dataframe after dropping the column:-"
  LastName  Id     Designation
1  Danials 101             CEO
2     Cena 102 Project Manager
3 Chandler 103      Senior Dev
4   McCool 104      Junior Dev
5    Nitro 105          Intern

R で names() メソッドを使用して名前で列をドロップする

names() メソッドを使用して、drop という名前の文字ベクトルを作成できます。 names() メソッドで列名を選択して、印刷または他の目的で使用するときに削除します。

! が含まれています。 記号は否定を意味します。 names() メソッドを使用する前に、渡された値ベクトルの長さが名前を付けるオブジェクトの長さと等しいことを確認する必要があります。

names() メソッドを使用して名前で列を削除する段階的なプロセスを以下に示します。

  1. まず、データ フレームを作成します。
  2. 削除する列を決定します。
  3. 列名を持つベクトルを作成して否定を適用します。
  4. 否定を最初のデータ フレームに割り当てます。
  5. 最後に、データ フレームを表示します。

names() メソッドを使用して、同じ従業員情報の例を試してみましょう。

Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                  LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                  Id=c(101, 102, 103, 104, 105),
                  Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))

print('The dataframe before dropping the column:-')
Delftstack

DropColumn <- c("Name","Id")

Delftstack = Delftstack[,!(names(Delftstack) %in% DropColumn)]

print('The dataframe after dropping the column:-')
Delftstack

上記のコードは、データ フレームから Name 列と Id 列を削除します。

出力:

[1] "The dataframe before dropping the column:-"
      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

[1] "The dataframe after dropping the column:-"
  LastName     Designation
1  Danials             CEO
2     Cena Project Manager
3 Chandler      Senior Dev
4   McCool      Junior Dev
5    Nitro          Intern

R で Subset() メソッドを使用して名前で列をドロップする

subset() メソッドは、列を名前でドロップする最も簡単な方法の 1つです。 削除する列名には - 記号を使用します。 このメソッドの基本的な機能は、データ フレームのサブセットを作成することですが、列を削除するためにも使用できます。

ステップバイステップのプロセスを以下に示します。

  1. まず、データ フレームを作成します。
  2. ドロップする列のサブセットを決定します。
  3. 列にはマイナス記号を使用します。
  4. 列サブセットを初期データ フレームに割り当てます。
  5. 最後に、変更されたデータ フレームを表示します。

subset() メソッドで同じ例を試してみましょう:

Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                  LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                  Id=c(101, 102, 103, 104, 105),
                  Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))

print('The dataframe before dropping the column:-')
Delftstack

Delftstack = subset(Delftstack, select = -c(Name,Id) )

print('The dataframe after dropping the column:-')
Delftstack

上記のコードは、subset() メソッドを使用して列 Name と Id を削除します。

出力:

[1] "The dataframe before dropping the column:-"
      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

[1] "The dataframe after dropping the column:-"
  LastName     Designation
1  Danials             CEO
2     Cena Project Manager
3 Chandler      Senior Dev
4   McCool      Junior Dev
5    Nitro          Intern