gpt4 book ai didi

r - 如何从R中的矩阵创建边列表?

转载 作者:行者123 更新时间:2023-12-04 02:31:57 25 4
gpt4 key购买 nike

该关系表示为矩阵 x像这样:

      A    B    C     D
A 0 2 1 1
B 2 0 1 0
C 1 1 0 1
D 1 0 1 0

这些条目是指它们拥有的连接数。

谁能告诉我如何将其写为边缘列表?

我更愿意把它写成一个边缘列表:
A B
A B
A C
A D
B C

但是这个边列表允许我创建一个网络图吗?

最佳答案

使用 igraph包裹:

x <- matrix(c(0,2,1,1,2,0,1,0,1,1,0,1,1,0,1,0), 4, 4)
rownames(x) <- colnames(x) <- LETTERS[1:4]

library(igraph)
g <- graph.adjacency(x)
get.edgelist(g)

# [,1] [,2]
# [1,] "A" "B"
# [2,] "A" "B"
# [3,] "A" "C"
# [4,] "A" "D"
# [5,] "B" "A"
# [6,] "B" "A"
# [7,] "B" "C"
# [8,] "C" "A"
# [9,] "C" "B"
# [10,] "C" "D"
# [11,] "D" "A"
# [12,] "D" "C"

我还建议您花一些时间阅读 igraph文档位于 http://igraph.sourceforge.net/index.html因为你最近的很多问题都是简单的案例用法。

(作为奖励, plot(g) 将回答您的另一个问题 How to plot relationships in R? )

关于r - 如何从R中的矩阵创建边列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13204046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com