R语言 按名称从一个给定的数据框架中删除列
从一个数据框架中删除列是简单地用于删除数据框架中不需要的列。在这篇文章中,我们将讨论在R中从一个给定的数据框架中按名称删除列的两种不同方法。
下面将讨论R语言中按名称从数据框架中删除列的不同方法
方法1:使用subset()
这是最简单的方法之一,通过使用subset()函数,用’-‘号表示放弃变量。这个函数在R语言中被用来创建数据框架的子集,也可以用来从数据框架中删除列。
语法
subset(df, expr)
参数
- df。使用的数据框架
- expr:子集的条件
方法
- 创建数据框架
- 选择要删除的数据子集
- 加一个减号
- 分配给初始数据框
- 显示数据框
例子
gfg <- data.frame(a=c('i','ii','iii','iv','v'),
x=c('I','II','III','IV','V'),
y=c(1,2,3,4,5),
z=c('a','b','c','d','e'))
print('Original dataframe:-')
gfg
gfg = subset(gfg, select = -c(x,z) )
print('Modified dataframe:-')
gfg
输出
方法2:使用names()
在这个方法中,我们创建了一个名为drop的字符向量,我们在其中存储了列名,后来我们告诉R选择所有的变量,除了向量drop中指定的列名。’!’符号表示否定。
R语言中的函数names()用于获取或设置一个对象的名称。该函数将对象,即向量、矩阵或数据框作为参数,同时将为对象分配名称的值作为参数。所传递的值向量的长度必须与要命名的对象的长度完全相等,并返回所有的列名。
语法:
names(x) <- value
参数:
- x:对象,即矢量、矩阵、数据框等。
- value。要分配给x的名称
处理方法
- 创建数据框
- 选择要删除的列
- 应用否定法
- 将其分配到初始数据框中
- 显示数据框
例子
gfg <- data.frame(a=c('i','ii','iii','iv','v'),
x=c('I','II','III','IV','V'),
y=c(1,2,3,4,5),
z=c('a','b','c','d','e'))
print('Original dataframe:-')
gfg
drop <- c("x","z")
gfg = gfg[,!(names(gfg) %in% drop)]
print('Modified dataframe:-')
gfg
输出
方法3:使用select()
在这种方法中,我们将通过导入R语言中的dplyr库并指定参数来删除数据集的列来使用select()。基本上,这个函数只保留你提到的变量。
语法:-
select(.data, …)
参数:-
- data:- 一个数据框,数据框扩展,或一个懒惰的数据框。
- … :- 一个或多个由逗号分隔的无引号表达式。变量名可以像它们在数据框中的位置一样使用,所以像x:y这样的表达式可以用来选择一个变量范围。
方法
- 导入模块
- 创建数据框架
- 选择要删除的列
- 应用减号
- 将其分配到初始数据框中
- 显示数据框
示例:-
library(dplyr)
gfg <- data.frame(a=c('i','ii','iii','iv','v'),
x=c('I','II','III','IV','V'),
y=c(1,2,3,4,5),
z=c('a','b','c','d','e'))
print('Original dataframe:-')
gfg
print('Modified dataframe:-')
select(gfg, -a)
输出:-