R で複数の列を削除する方法 (例あり)


多くの場合、R のデータ フレームから複数の列を一度に削除したい場合があります。

これを行う最も簡単な方法は、次の構文を使用することです。

 df[, c('column_name1', 'column_name2')] <- list(NULL)

たとえば、次の構文は、特定のデータ フレームから列 2 と列 3 を削除する方法を示しています。

 #create data frame
df <- data.frame(var1=c(1, 3, 2, 9, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 6, 8),
                 var4=c(1, 1, 2, 8, 7))

#delete columns 2 and 3 from data frame
df[, c('var2', 'var3')] <- list(NULL)

#view data frame
df

  var1 var4
1 1 1
2 3 1
3 2 2
4 9 8
5 5 7

インデックスに基づいて列を削除することもできます。

 #create data frame
df <- data.frame(var1=c(1, 3, 2, 9, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 6, 8),
                 var4=c(1, 1, 2, 8, 7))

#delete columns in position 2 and 3
df[, c(2, 3)] <- list(NULL)

#view data frame
df

  var1 var4
1 1 1
2 3 1
3 2 2
4 9 8
5 5 7

また、次の構文を使用して範囲からすべての列を削除できます。

 #create data frame
df <- data.frame(var1=c(1, 3, 2, 9, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 6, 8),
                 var4=c(1, 1, 2, 8, 7))

#delete columns in range 1 through 3
df[, 1:3] <- list(NULL)

#view data frame
df

  var4
1 1
2 1
3 2
4 8
5 7

一般に、列を追加または再配置すると位置が変わる可能性があるため、位置ではなく名前で列を削除することをお勧めします。

列名を使用すると、位置に関係なく、確実に正しい列を削除できます。

追加リソース

R で列名を反復処理する方法
R で 2 つの列を 1 つに結合する方法
R の複数の列から外れ値を削除する方法

コメントを追加する

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