从给定名称的数据框中选择一列

时间:2019-02-05 14:24:48

标签: r list dataframe

我正在编写一个函数,在这个函数中,我想做以下事情:

我有一个数据框或列表,我想通过函数中的给定参数选择特定的列。

示例数据

dat <- cbind.data.frame(A = c(1, 2, 3), B = c(4, 5, 6))

function(dat, name = "B") {
 new_data <- dat[data$name ,]
 return(new_data)
}

我想得到的基本上是列dat$B。我的上述功能无法正常工作。非常感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

subSET <- function(dat, name) {
 dat[name]
}

subSET2 <- function(dat, name) {
 dat[[name]]
}



subSET(dat, "B") # returns data.frame

  B
1 4
2 5
3 6

subSET2(dat, "B")  # returns vector
[1] 4 5 6