【发布时间】:2018-04-05 04:48:35
【问题描述】:
正如标题所示,我想找出一个命名向量的唯一值及其对应的名称
library(dplyr)
temp <- runif(10000, 0, 10) %>% ceiling() %>% as.integer()
names(temp) <- c('a', 'b', "c", 'd', 'e','f', 'g', "s", "s", 'r') %>% rep(100)
命名向量的前 10 个值如下所示。
temp[1:10]
a b c d e f g s s r
7 4 9 2 5 7 9 8 8 8
我可以找到唯一值或唯一名称。但我不知道如何找到它们,也不知道如何匹配它们。
temp %>% unique()
names(temp) %>% unique()
【问题讨论】:
-
你的意思是
temp[unique(names(temp))]? -
前 10 个值的预期值是多少?
-
@Sotos 是的,实际上这就是我想要的。有点简单,但它从我的想法中消失了。谢谢。你可以把它写下来作为答案,我会接受,这样我们就可以完成帖子了
-
不确定我们要做什么,如果我们匹配唯一名称,结果将为您提供第一个匹配项,请尝试:
x <- c(1,2,3); names(x) <- c("a", "a", "b"); x[unique(names(x))]这将提供1,3。