从 R 中的给定 DataFrame 按名称删除列
从数据框中删除列仅用于删除数据框中不需要的列。在本文中,我们将讨论从 R 中的给定数据帧中按名称删除列的两种不同方法。
下面讨论了从数据框中按名称删除列的不同方法是 R 语言
方法一:使用subset()
这是删除列的最简单方法之一是使用带有“-”符号的 subset()函数,该符号表示删除变量。 R 语言中的此函数用于创建数据框的子集,也可用于从数据框中删除列。
Syntax:
subset(df, expr)
Parameters:
- df: Data frame used
- expr: Condition for a subset
方法
- 创建数据框
- 选择要删除的数据子集
- 放一个减号
- 分配给初始数据框
- 显示数据框
例子:
R
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
R
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
R
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)
输出:
方法二:使用names()
在这个方法中,我们创建了一个名为 drop 的字符向量,我们将在其中存储列名,然后我们告诉 R 选择除向量 drop 中指定的列名之外的所有变量。这 '!'符号表示否定。
R 语言中的函数names() 用于获取或设置对象的名称。该函数将对象(即向量、矩阵或数据框)作为参数以及要分配给对象名称的值。传递的值向量的长度必须与要命名的对象的长度完全相等,并返回所有列名。
Syntax:
names(x) <- value
Parameters:
- x: Object i.e. vector, matrix, data frame, etc.
- value: Names to be assigned to 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()。基本上,这个函数只保留你提到的变量。
Syntax:-
select(.data, …)
Parameters:-
- data:-A data frame, data frame extension, or a lazy data frame.
- … :- One or more unquoted expressions separated by commas. Variable names can be used as if they were positions in the data frame, so expressions like x:y can be used to select a range of variables.
方法
- 导入模块
- 创建数据框
- 选择要删除的列
- 应用减号
- 将其分配给初始数据框
- 显示数据框
例子:-
电阻
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)
输出:-