在R中按名称索引列?
我有一个非常大的数据框,为了避免查找列的编号来选择它的麻烦,我可以按名称用方括号进行选择吗 如在R中按名称索引列?,r,dataframe,R,Dataframe,我有一个非常大的数据框,为了避免查找列的编号来选择它的麻烦,我可以按名称用方括号进行选择吗 如 test\u vec是的,您可以,精确地使用您使用的语法。您还可以使用c()选择多列。单括号返回一个数据.frame对象,而双括号将返回一个向量。 或者,对于大数据帧的子集设置,dplyr::select是一个好朋友 library(dplyr) df.subset <- select(sample.df,c(all_column_names)) 库(dplyr) 是的,你可以。请注意以下代码
test\u vec是的,您可以,精确地使用您使用的语法。您还可以使用c()
选择多列。单括号返回一个数据.frame
对象,而双括号将返回一个向量
。
或者,对于大数据帧的子集设置,dplyr::select
是一个好朋友
library(dplyr)
df.subset <- select(sample.df,c(all_column_names))
库(dplyr)
是的,你可以。请注意以下代码:
mtcars[, "mpg"] # This will result in a vector as output
[1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 17.8 16.4 17.3 15.2 10.4 10.4 14.7 32.4
[19] 30.4 33.9 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4 15.8 19.7 15.0 21.4
如果要保留数据结构(数据帧)作为输入,请将drop
参数设置为FALSE
:
mtcars[, "mpg", drop = FALSE]
mpg
Mazda RX4 21.0
Mazda RX4 Wag 21.0
Datsun 710 22.8
Hornet 4 Drive 21.4
Hornet Sportabout 18.7
Valiant 18.1
Duster 360 14.3
Merc 240D 24.4
Merc 230 22.8
Merc 280 19.2
Merc 280C 17.8
Merc 450SE 16.4
Merc 450SL 17.3
Merc 450SLC 15.2
Cadillac Fleetwood 10.4
Lincoln Continental 10.4
Chrysler Imperial 14.7
Fiat 128 32.4
Honda Civic 30.4
Toyota Corolla 33.9
Toyota Corona 21.5
Dodge Challenger 15.5
AMC Javelin 15.2
Camaro Z28 13.3
Pontiac Firebird 19.2
Fiat X1-9 27.3
Porsche 914-2 26.0
Lotus Europa 30.4
Ford Pantera L 15.8
Ferrari Dino 19.7
Maserati Bora 15.0
Volvo 142E 21.4
也可以删除逗号,只使用名称子集:
mtcars["mpg"] # The data structure of the output is preserved
mtcars[c("mpg", "cyl", "am")] # For subsetting multiple columns
答案是肯定的,但我认为它不起作用,因为你在这里问?为什么投票被否决?语法正确,方法简单?
mtcars[, "mpg", drop = FALSE]
mpg
Mazda RX4 21.0
Mazda RX4 Wag 21.0
Datsun 710 22.8
Hornet 4 Drive 21.4
Hornet Sportabout 18.7
Valiant 18.1
Duster 360 14.3
Merc 240D 24.4
Merc 230 22.8
Merc 280 19.2
Merc 280C 17.8
Merc 450SE 16.4
Merc 450SL 17.3
Merc 450SLC 15.2
Cadillac Fleetwood 10.4
Lincoln Continental 10.4
Chrysler Imperial 14.7
Fiat 128 32.4
Honda Civic 30.4
Toyota Corolla 33.9
Toyota Corona 21.5
Dodge Challenger 15.5
AMC Javelin 15.2
Camaro Z28 13.3
Pontiac Firebird 19.2
Fiat X1-9 27.3
Porsche 914-2 26.0
Lotus Europa 30.4
Ford Pantera L 15.8
Ferrari Dino 19.7
Maserati Bora 15.0
Volvo 142E 21.4
mtcars["mpg"] # The data structure of the output is preserved
mtcars[c("mpg", "cyl", "am")] # For subsetting multiple columns