如何在 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
一般来说,建议按名称而不是按位置删除列,因为如果添加或重新排列列,位置可能会发生变化。
通过使用列名称,您可以确保删除正确的列,无论其位置如何。