为了账号安全,请及时绑定邮箱和手机立即绑定

在R中使用变量定义$ right参数

在R中使用变量定义$ right参数

aluckdog 2019-12-06 12:42:43
我想将一个变量传递给二进制运算符$。假设我有这个> 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")


查看完整回答
反对 回复 2019-12-06
?
米脂

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


查看完整回答
反对 回复 2019-12-06
  • 3 回答
  • 0 关注
  • 683 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信