我正在编写一个函数,在这个函数中,我想做以下事情:
我有一个数据框或列表,我想通过函数中的给定参数选择特定的列。
示例数据
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
。我的上述功能无法正常工作。非常感谢您的帮助。
答案 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