从R中具有相同名称的命名数字向量中提取所有值

从R中具有相同名称的命名数字向量中提取所有值,r,vector,numeric,named,R,Vector,Numeric,Named,我第一次尝试在R中处理一个命名数值的向量。向量本身被命名为p值。它由以相应变量命名的p值组成。通过模拟,我得到了大量的p值,它们的命名总是像它们对应的五个变量之一。然而,我只对一个变量的p值感兴趣,并试图用p.values[[“var_a”]]提取它们,但这只给出了var_a最后一个条目的p值。p、 值$var_a无效,并且as.numeric(p.values)或unname(p.values)只提供我的所有值,而不提供名称。你知道我怎样才能让R给我1/5的命名数字,它们被命名为var_a吗

我第一次尝试在R中处理一个命名数值的向量。向量本身被命名为p值。它由以相应变量命名的p值组成。通过模拟,我得到了大量的p值,它们的命名总是像它们对应的五个变量之一。然而,我只对一个变量的p值感兴趣,并试图用p.values[[“var_a”]]提取它们,但这只给出了var_a最后一个条目的p值。p、 值$var_a无效,并且as.numeric(p.values)或unname(p.values)只提供我的所有值,而不提供名称。你知道我怎样才能让R给我1/5的命名数字,它们被命名为var_a吗

简短示例:

p.values <- as.numeric(c(rep(1:5, each = 5)))
names(p.values) <- rep(letters[1:5], 5)
str(p.values)
   Named num [1:25] 1 1 1 1 1 2 2 2 2 2 ...
 - attr(*, "names")= chr [1:25] "a" "b" "c" "d" ...

p.values您可以使用
[
名称(p.values)=“a”
p.values
进行子集设置,以显示所有名为
a
的值

p.values[names(p.values) == "a"]
#a a a a a 
#1 2 3 4 5 

非常感谢你!