Ошибка в том, что матрица смежности не является симметричной

#r #graph #igraph #statnet

Вопрос:

Мой набор данных выглядит следующим образом, я хочу создать сеть, но ошибка в том, что моя матрица смежности не симметрична, я новичок в R, я не знаю, как преобразовать мои данные в симметричную матрицу смежности, может ли кто-нибудь помочь мне, пожалуйста?

 df2:
17  "RobertKennedyJr" "RobertKennedyJr "             
18  "Real_Sheezzii"   "Real_Sheezzii "               
19  "Kellie_Martin"   "Kellie_Martin "               
20  "ThatsOurWaldo"   "ThatsOurWaldo "               
21  "SCN_Nkosi"       "SCN_Nkosi "                   
22  "azsweetheart013" "azsweetheart013 "             
23  "KYourrights"     "KYourrights KathyConWom"      
24  "GowTolson"       " KathyConWom"                 
25  "Peterpu52451065" " KathyConWom"                 
26  "Jifchoppa"       " KathyConWom"                 
27  "ClaraLpz3"       " KathyConWom"                 
28  "Anna5705"        " KathyConWom"                 
29  "Brizzle254"      " KathyConWom"                 
30  "JackSpa02102454" " KathyConWom"      
 

Код, который я пробовал

 library("igraph")
library("network")
library("statnet")
relationsp <- as.matrix(df2)
relationsp



net <- as.network(x = mat, # the network object
                  directed = TRUE, # specify whether the network is directed
                  loops = FALSE, # do we allow self ties (should not allow them)
                  matrix.type = "adjacency" # the type of input
)
 

Комментарии:

1. Вы использовали matrix.type = "adjacency" , но ваша матрица выглядит так, как будто на самом деле она представляет собой список краев. Попробуй matrix.type = "edgelist"

Ответ №1:

Если вы применяете igraph пакет, вы должны использовать graph_from_data_frame его для создания объекта graph net , за которым следует get.adjacency получение матрицы смежности, например,

 > net <- graph_from_data_frame(dat)

> get.adjacency(net, sparse = FALSE)
                RobertKennedyJr Real_Sheezzii Kellie_Martin GowTolson ClaraLpz3
RobertKennedyJr               1             0             0         0         0
Real_Sheezzii                 0             1             0         0         0
Kellie_Martin                 0             0             1         0         0
GowTolson                     0             0             0         0         0
ClaraLpz3                     0             0             0         0         0
KathyConWom                   0             0             0         0         0
                KathyConWom
RobertKennedyJr           0
Real_Sheezzii             0
Kellie_Martin             0
GowTolson                 1
ClaraLpz3                 1
KathyConWom               0