如何在 R 中按索引选择 DataFrame 列?
在本文中,我们将讨论如何使用 R 编程语言从数据框中按索引选择列。
注意: R 编程语言中的列索引总是从 1 开始。
方法 1:使用 Base R 按索引选择特定列
在这里,我们将通过在数据框中使用以 R 为基数的索引来选择列。
语法:
dataframe[,c(column_indexes)]
示例:
R
# create a dataframe with 3 rows and 4 columns
data=data.frame(name=c("akash","kyathi","preethi"),
subjects=c("java","R","dbms"),
marks=c(90,98,78))
# select second and third column
print(data[,c(2,3)])
R
# create a dataframe with 3 rows and 4 columns
data=data.frame(name=c("akash","kyathi","preethi"),
subjects=c("java","R","dbms"),
marks=c(90,98,78))
# select first to third column
print(data[,1:3])
R
# create a dataframe with 3 rows and 4 columns
data=data.frame(name=c("akash","kyathi","preethi"),
subjects=c("java","R","dbms"),
marks=c(90,98,78))
# exclude second and third column
print(data[,-c(2,3)])
R
# loads the package
library("dplyr")
# create a dataframe with 3 rows and 4 columns
data = data.frame(name=c("akash", "kyathi", "preethi"),
subjects=c("java", "R", "dbms"),
marks=c(90, 98, 78))
# select 1 and 3 columns
data % >%
select(1, 3)
输出:
subjects marks
1 java 90
2 R 98
3 dbms 78
方法二:选择索引范围内的特定列
我们可以使用索引范围运算符进行选择,如下所示。
语法:
dataframe[,column_index_start:column_index_end]
在哪里。
- column_index_start 是第一个索引号,column_index_end 是第二个索引号。
示例:
R
# create a dataframe with 3 rows and 4 columns
data=data.frame(name=c("akash","kyathi","preethi"),
subjects=c("java","R","dbms"),
marks=c(90,98,78))
# select first to third column
print(data[,1:3])
输出:
name subjects marks
1 akash java 90
2 kyathi R 98
3 preethi dbms 78
方法3:通过排除列索引选择索引列
我们可以通过在 c() 向量中使用 - 号指定来排除索引列。
语法:
dataframe[,-c(column_indexes)]
示例:
R
# create a dataframe with 3 rows and 4 columns
data=data.frame(name=c("akash","kyathi","preethi"),
subjects=c("java","R","dbms"),
marks=c(90,98,78))
# exclude second and third column
print(data[,-c(2,3)])
输出:
[1] "akash" "kyathi" "preethi"
方法 4:使用 dplyr 按索引选择列名
dplyr 包中的 select()函数用于按索引选择列。
语法:
dataframe %>%
select(column_numbers)
在哪里
- %>%运算符将加载到数据框中
导入和安装 dpylr 包的语法:
install.packages("dplyr")
library("dplyr")
例子:
R
# loads the package
library("dplyr")
# create a dataframe with 3 rows and 4 columns
data = data.frame(name=c("akash", "kyathi", "preethi"),
subjects=c("java", "R", "dbms"),
marks=c(90, 98, 78))
# select 1 and 3 columns
data % >%
select(1, 3)
输出:
name marks
1 akash 90
2 kyathi 98
3 preethi 78