我想将一个变量传递给二进制运算符$。假设我有这个> levels(diamonds$cut)[1] "Fair" "Good" "Very Good" "Premium" "Ideal" 然后我想做一个函数,将$选择器作为参数my_helper <- function (my_param) { levels(diamonds$my_param)}但这行不通> my_helper(cut)NULL> my_helper("cut")NULL
3 回答
潇潇雨雨
TA贡献1833条经验 获得超4个赞
使用[[代替$。 x$y是的好手x[["y"]]。
my_helper <- function (my_param) {
levels(diamond[[my_param]])
}
my_helper("cut")
米脂
TA贡献1836条经验 获得超3个赞
尝试这样的事情:
dat = data.frame(one=rep(1,10), two=rep(2,10), three=rep(3,10))
myvar="one"
dat[,names(dat)==myvar]
这应该返回数据帧数据的第一列/变量
dat$one --> [1] 1 1 1 1 1 1 1 1 1 1
- 3 回答
- 0 关注
- 676 浏览
添加回答
举报
0/150
提交
取消