R语言 如何在R数据框架中选择特定的列
在这篇文章中,我们将讨论如何在R编程语言中从数据框架中选择特定的列。
方法1:通过列名使用R基础选择特定列
在这种方法中,为了选择特定的列,用户需要根据要求在方括号中写上列名与给定数据框的名称,以获得用户需要的那些特定列。
语法:
data_frame
例子
# Creating DataFrame
gfg < - data.frame(a=c(5, 1, 1, 5, 6, 7, 5, 4, 7, 9),
b=c(1, 8, 6, 8, 6, 7, 4, 1, 7, 3),
c=c(7, 1, 8, 9, 4, 1, 5, 6, 3, 7),
d=c(4, 6, 8, 4, 6, 4, 8, 9, 8, 7),
e=c(3, 1, 6, 4, 8, 9, 7, 8, 9, 4))
# Selecting specific Columns Using Base
# R by column name
gfg[c('b', 'd', 'e')]
输出
方法2:通过列索引使用基础R选择特定的列
在这种方法中,为了选择特定的列,用户需要使用方括号中的数据框架,并且。通过它,用户还需要在方括号内使用列的索引,索引从1开始,根据用户的要求,在括号内给出所需的列索引
语法:
data_frame
例子 :
# Creating DataFrame
gfg < - data.frame(a=c(5, 1, 1, 5, 6, 7, 5, 4, 7, 9),
b=c(1, 8, 6, 8, 6, 7, 4, 1, 7, 3),
c=c(7, 1, 8, 9, 4, 1, 5, 6, 3, 7),
d=c(4, 6, 8, 4, 6, 4, 8, 9, 8, 7),
e=c(3, 1, 6, 4, 8, 9, 7, 8, 9, 4))
# Selecting specific Columns Using Base R
# by column index
gfg[c(2, 4, 5)]
输出
方法3:通过对数据进行子集,按列名选择特定列
在这种通过子集数据选择特定列的方法中,用户需要指定一个包含要提取的列名的字符向量,用户必须在数据框的方括号中输入与列名相对应的字符向量。
语法:
data_frame[,c(column_name_1,column_name_2,...)]
例子
# Creating DataFrame
gfg < - data.frame(a=c(5, 1, 1, 5, 6, 7, 5, 4, 7, 9),
b=c(1, 8, 6, 8, 6, 7, 4, 1, 7, 3),
c=c(7, 1, 8, 9, 4, 1, 5, 6, 3, 7),
d=c(4, 6, 8, 4, 6, 4, 8, 9, 8, 7),
e=c(3, 1, 6, 4, 8, 9, 7, 8, 9, 4))
# Selecting specific columns by subsetting
# data by column name
gfg[, c('b', 'd', 'e')]
输出
方法4:通过对数据进行子集,按列索引选择特定列
在这种通过子集数据选择特定列的方法中,用户需要做的是指定一个包含要提取的列的索引的整数向量,用户必须在数据框的方括号中输入与列索引相对应的索引向量
语法:
data_frame[,c(column_index_1,column_index_2,...)]
例子
# Creating DataFrame
gfg < - data.frame(a=c(5, 1, 1, 5, 6, 7, 5, 4, 7, 9),
b=c(1, 8, 6, 8, 6, 7, 4, 1, 7, 3),
c=c(7, 1, 8, 9, 4, 1, 5, 6, 3, 7),
d=c(4, 6, 8, 4, 6, 4, 8, 9, 8, 7),
e=c(3, 1, 6, 4, 8, 9, 7, 8, 9, 4))
# Selecting specific columns by subsetting data
# by column index:
gfg[, c(2, 4, 5)]
输出
方法5:通过用select对数据进行子集来选择特定的列 subset函数的参数 。
子集函数: 该函数将返回符合条件的数据帧子集。
语法:
subset(x, subset, select, drop = FALSE, …)
参数
- x:要被子集的对象。
- subset:逻辑表达式,表示要保留的元素或行:缺失的值被视为假值。
- select:表达式,表示要从数据框中选择的列。
- drop:传递给[ 索引运算符。
- …: 传递给其他方法的进一步参数。
例子
# Creating DataFrame
gfg < - data.frame(a=c(5, 1, 1, 5, 6, 7, 5, 4, 7, 9),
b=c(1, 8, 6, 8, 6, 7, 4, 1, 7, 3),
c=c(7, 1, 8, 9, 4, 1, 5, 6, 3, 7),
d=c(4, 6, 8, 4, 6, 4, 8, 9, 8, 7),
e=c(3, 1, 6, 4, 8, 9, 7, 8, 9, 4))
# Selecting specific columns by Subsetting
# Data with select Argument of subset Function
subset(gfg, select=c('b', 'd', 'e'))
输出
方法6:使用dplyr包按列名选择特定列
在这种方法中,为了选择给定数据框架中的特定列,用户需要首先在用户的工作R控制台中安装并导入dplyr包,然后调用select函数,并将所需列的名称作为该函数的参数传入
语法:
data_frame %>% select(column_name_1,column_name_2,...)
例子
# Importing dplyr library
library("dplyr")
# Creating DataFrame
gfg < - data.frame(a=c(5, 1, 1, 5, 6, 7, 5, 4, 7, 9),
b=c(1, 8, 6, 8, 6, 7, 4, 1, 7, 3),
c=c(7, 1, 8, 9, 4, 1, 5, 6, 3, 7),
d=c(4, 6, 8, 4, 6, 4, 8, 9, 8, 7),
e=c(3, 1, 6, 4, 8, 9, 7, 8, 9, 4))
# Selecting specific columns using dplyr
# package by column name
gfg % > % select(b, d, e)
输出
方法7:通过列索引使用dplyr包选择特定列
在这种方法中,为了选择给定数据框架中的特定列,用户需要首先在用户的工作R控制台中安装并导入dplyr包,然后调用select函数,并将所需列的索引作为该函数的参数传入。
语法:
data_frame %>% select(column_index_1,column_index_2,...)
例子
# Importing dplyr library
library("dplyr")
# Creating DataFrame
gfg < - data.frame(a=c(5, 1, 1, 5, 6, 7, 5, 4, 7, 9),
b=c(1, 8, 6, 8, 6, 7, 4, 1, 7, 3),
c=c(7, 1, 8, 9, 4, 1, 5, 6, 3, 7),
d=c(4, 6, 8, 4, 6, 4, 8, 9, 8, 7),
e=c(3, 1, 6, 4, 8, 9, 7, 8, 9, 4))
# Selecting specific columns using dplyr
# package by column index
gfg % > % select(2, 4, 5)
输出