如何在 R 中使用 Dplyr 包删除列
在本文中,我们将使用 dplyr 库删除 R 编程语言中的列。
使用中的数据集:
使用列名删除列
在这里,我们将使用 select() 方法按名称选择和删除列。
句法:
select(dataframe,-column_name)
这里,dataframe 是输入数据帧, column_name 是要删除的数据帧中的列
要删除多个列:
句法:
select(dataframe,-c(column1,column2,.,column n))
这里,数据帧是输入数据帧,列是要删除的数据帧中的列。
示例:按名称删除列的 R 程序
R
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove id and name
print(select(data1,-c(name,id)))
R
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove id
print(select(data1,-id))
# remove multiple columns- name,id
print(select(data1,-c(name,id)))
R
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove column that contains na
print(select(data1,-contains('na')))
# remove column that contains re
print(select(data1,-contains('re')))
R
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove column that starts with na
print(select(data1,-starts_with('na')))
# remove column that starts with ad
print(select(data1,-starts_with('ad')))
R
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove column that ends with d
print(select(data1,-ends_with('d')))
# remove column that starts with ss
print(select(data1,-ends_with('ss')))
输出:
按位置删除列
在这里,我们将使用列索引或位置删除列。我们将使用 select() 方法通过删除其位置来选择一列
注意:索引从 1 开始
句法:
select(dataframe,-index)
这里,数据帧是输入数据帧,索引是要删除的数据帧中的列位置。
要删除多个列:
句法:
select(dataframe,-c(index1,index2,.,index n))
这里,数据帧是输入数据帧,索引是要删除的数据帧中的列位置。
示例: R 程序按索引删除列
电阻
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove id
print(select(data1,-id))
# remove multiple columns- name,id
print(select(data1,-c(name,id)))
输出:
删除包含值或匹配模式的列
让我们讨论如何删除包含字符或字符串的列。
方法一:使用 contains()
contains()删除包含给定子字符串的列。
句法:
select(dataframe,-contains(‘sub_string’))
Here, dataframe is the input dataframe and sub_string is the string present in the column name will be removed.
方法二:使用matches()
match()删除包含给定子字符串的列。
句法:
select(dataframe,-matches(‘sub_string’))
Here, dataframe is the input dataframe and sub_string is the string present in the column name will be removed.
示例:使用 contains() 方法删除列的 R 程序
电阻
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove column that contains na
print(select(data1,-contains('na')))
# remove column that contains re
print(select(data1,-contains('re')))
输出:
删除以特定字符开头或结尾的列
在这里我们还可以根据开始和结束字符选择列。
- starts_with()用于返回以给定字符开头的列。
句法:
select(dataframe,-starts_with(‘substring’))
Where, dataframe is the input dataframe and substring is the character/string that starts with it.
- Ends_with()用于返回以给定字符结尾的列。
句法:
select(dataframe,-ends_with(‘substring’))
Where, dataframe is the input dataframe and substring is the character/string that ends with it.
示例: R 程序删除以字符/substring 开头的列
电阻
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove column that starts with na
print(select(data1,-starts_with('na')))
# remove column that starts with ad
print(select(data1,-starts_with('ad')))
输出:
示例: R 程序删除以字符/substring 结尾的列
电阻
# load the library
library(dplyr)
# create dataframe with 3 columns
# id,name and address
data1=data.frame(id=c(1,2,3,4,5,6,7,1,4,2),
name=c('sravan','ojaswi','bobby',
'gnanesh','rohith','pinkey',
'dhanush','sravan','gnanesh',
'ojaswi'),
address=c('hyd','hyd','ponnur','tenali',
'vijayawada','vijayawada','guntur',
'hyd','tenali','hyd'))
# remove column that ends with d
print(select(data1,-ends_with('d')))
# remove column that starts with ss
print(select(data1,-ends_with('ss')))
输出: