r获取具有最大值的变量名称

时间:2016-02-19 23:46:46

标签: r variables max names

我已经在线搜索了一段时间,但没有真正找到这个具体问题的答案。 也许我没有使用正确的关键词......但如果这个问题上已经有了一个主题,请指导我!

所以,让我们说数据看起来像这样:

a = 3 b = 5

现在我想知道哪一个更大,所以我这样做:

max(a,b)

这只会让我回复" 5"但我想让它返回" b" 我尝试使用哪个()但它继续说"这不合逻辑" 我也尝试了deparse(),但我收到一串" 5"

提前感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

感谢andrewelamb在答案上取得了很好的开端。 我改变了一些代码以产生我正在寻找的正确答案:

`a = 3
 b = 5
 v_name = ["a","b"]
 v_name[which.max(c(a,b))]`

希望它能帮助将来遇到此问题的其他人

答案 1 :(得分:0)

A basic approach to get variable name实现为myfunc,其他一切都很简洁:

myfunc <- function(v1) {
  deparse(substitute(v1))
}
a=3
b=5
ifelse(max(a,b),myfunc(a),myfunc(b))

答案 2 :(得分:-1)

a <- 5
b <- 4
vector <- c(a,b)
which.max(vector)
vector[which.max(vector)]