如何根据其值获取变量的名称

时间:2015-05-08 15:35:29

标签: r

如果我有一个interger列表,并且我给了它们字符串名称,我如何根据值得到名称?

这可能吗?

谢谢

2 个答案:

答案 0 :(得分:4)

x <- list(a=2L,b=3L) 
names(x[which(x==2)])

答案 1 :(得分:1)

matchnames一起工作:

x <- list(a=2L,b=3L)

names(x)[match(2L,x)]
# [1] "a"

如果x实际上不是list,而是向量:x <- c(a=2L,b=3L),这也有效。

如果值不唯一,则选择第一个匹配:

x <- list(a=2L,b=3L,d=2L)
names(x)[match(2L,x)] # still "a"