R 中的网络对象和邻接矩阵

Network object and adjacency matrix in R

我有一个包含以下信息的邻近网络:

阿比盖尔住在弗兰克附近

阿比盖尔住在卡梅伦附近

比利住在丹尼尔附近

Ethan 住在 Cameron 附近

Ethan 住在 Frank 附近

Frank 住在 Cameron 附近

有人可以帮我编写代码,将其变成具有 vertex.names 节点属性的邻接矩阵吗?

您拥有的数据基本上是一个边缘列表。您可以使用 igraph 将其转换为图形,然后将其转换为邻接矩阵。

EL = as.matrix(read.table(text="
Abigail Frank
Abigail Cameron
Billy Daniell
Ethan Cameron
Ethan Frank
Frank Cameron"))

library(igraph)

g = graph_from_edgelist(EL, directed = FALSE)
as.matrix(as_adjacency_matrix(g))

        Abigail Frank Cameron Billy Daniell Ethan
Abigail       0     1       1     0       0     0
Frank         1     0       1     0       0     1
Cameron       1     1       0     0       0     1
Billy         0     0       0     0       1     0
Daniell       0     0       0     1       0     0
Ethan         0     1       1     0       0     0