【问题标题】:which.min() returning two numberswhich.min() 返回两个数字
【发布时间】:2020-03-22 16:14:13
【问题描述】:

我需要向量中最小值的位置(图中的度数,从函数 degree() 获得)。我使用 which.min()。

但是,由于向量本身是“注释的”,我得到两个值 - 节点的名称和向量中的位置(我不知道为什么它们的顺序不正确) - 这里是节点“23”度数最小,在向量中的第 40 位。它们相互重叠,我不知道如何将它们分开。

我只需要使用节点的名称来进行进一步的应用。我找不到关于这个问题的任何问题。

> degs
 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 24 25 26 27 28 29 30 31 32 34 35 36 38 39 40 41 33 23 37 42 43 
14 25 31 17 25 11 26 21 23 25 24 17 13 20 12 15  7 15 28 18  9 17  8  7  7  7 14 19 12 17 19 10 19 20 19 10  7 11 12  6  8 12 13

> which.min(degs)
23 
40 

【问题讨论】:

  • 如果名字困扰你,请使用which.min(unname(test))

标签: r igraph


【解决方案1】:

上面的数字只是值的名称,你可以忽略它,明白吗?

> c("23" = 40)
23 
40

【讨论】:

  • 尝试unname(which.min(...)) 删除名称。
  • @G.Grothendieck 我通常只是忽略它。 :)
【解决方案2】:

如果你只想要节点的名字,你可以使用

names(which.min(degs))

输出将是“23”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-09
    • 2020-08-02
    • 2015-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多