什么是命名号码?

时间:2019-03-14 10:01:14

标签: r

我有一个数据结构,当我在google上搜索到有关命名向量的结果时,rstudio将其标识为“命名数字”,但我没有提到命名数字。他们是一样的吗?

思考此问题的最佳方法是什么?它是字典吗?一个清单两个清单?

我的目标是按数字排序,然后按大小顺序获取名称。

print(my_named_number)

Baker Street       Charing Cross   Edgware Road (B)    Elephant & Castle 
           8.420070e-04                9.403936e-01                3.732567e-05                4.620485e-03 
             Embankment                   Harlesden          Harrow & Wealdston                Kensal Green 
           1.000000e+00                1.566635e-12                1.623611e-17                3.082285e-10 

很抱歉,这是不可复制的,我不知道如何建立一个命名的数字,而我正在使用的数据是igraph:eigen_centrality(igraph_object)返回的列表的向量部分

编辑:

str(my_named_number)

Named num [1:4] 8.42e-04 9.40e-01 3.73e-05 4.62e-03
 - attr(*, "names")= chr [1:4] "Baker Street" "Charing Cross" "Edgware Road (B)" "Elephant & Castle" 

2 个答案:

答案 0 :(得分:3)

str输出中的“命名为foo”仅表示您的对象是foo的向量,并带有名称。

x <- c(1,2,3)
names(x) <- letters[1:3]
str(x)
# Named num [1:3] 1 2 3
# - attr(*, "names")= chr [1:3] "a" "b" "c"

y <- c("bar", "baz")
names(y) <- letters[1:2]
str(y)
# Named chr [1:2] "bar" "baz"
# - attr(*, "names")= chr [1:2] "a" "b"

答案 1 :(得分:1)

这是一种按顺序访问名称和最大名称的解决方案:

v <- c(a=1, b=2, c=-1)
names(sort(v))
> [1] "c" "a" "b"
names(which.max(v))
> "b"