如何使用列名删除 R 中的数据帧列?

通过创建要删除的列对象或要保留的列对象,可以删除数据帧中的列。

示例

> df <- data.frame(
   Var1 =1:10,
   Var2 =11:20,
   Var3 =21:30,
   Var4 =31:40
)
我们可以使用以下代码删除列Var1和Var2:
drops <- c("Var1","Var2")
> df[ , !(names(df) %in% drops)]
Var3 Var4
1 21 31
2 22 32
3 23 33
4 24 34
5 25 35
6 26 36
7 27 37
8 28 38
9 29 39
10 30 40

另外,我们可以通过使用keeps函数执行相同的操作,该函数会将想要拥有的变量保留在数据框中,如下所示-

> keeps <- c("Var3", "Var4")
> df[keeps]
Var3 Var4
1 21 31
2 22 32
3 23 33
4 24 34
5 25 35
6 26 36
7 27 37
8 28 38
9 29 39
10 30 40