R, ошибка в нахождении степени, близости и промежуточности - PullRequest
0 голосов
/ 28 октября 2018

Попытка применить общие меры центральности к простому набору данных без указания направления, например:

enter image description here

Это дает ошибку:

Error in closeness(net, gmode = "graph") : unused argument (gmode = "graph")

Когда я удалил аргумент (gmode = "graph), он дает:

Error in degree(W) : Not a graph object 

Я пытался использовать эти строки для их преобразования, но все равно не работает:

W <- graph_from_adjacency_matrix(df)
W <- graph_from_data_frame(df)

Как я могу их исправить? Спасибо.

Вот строки:

Bob <- c(0,1,0,0,0)
Kate <- c(0,0,0,1,0)
David <- c(0,0,0,1,0)
Jack <- c(0,0,1,0,0)
Peter <- c(0,1,0,0,1)
df <- data.frame(Bob, Kate, David, Jack, Peter)

library(igraph)

W <- data.frame(df)
net <- network(W)

net %v% 'vertex.names'

degree(W, gmode="graph")
closeness(net, gmode="graph")
betweenness(net, gmode="graph")

Надстройка после ответа на этот вопрос, на случай, если она можетпомогите кому-нибудь - преобразовать формат Excel в adjacency_matrix, используйте строки ниже.

df <- readxl::read_excel("spreadsheet.xlsx", sheet = "Sheet1")
W <- as.matrix(df)
W <- graph_from_adjacency_matrix(W)

1 Ответ

0 голосов
/ 28 октября 2018

Ваш код несколько загадочный, предполагая, возможно, использование какого-то другого пакета?В igraph такой функции network нет, функции degree, closeness и betweenness не имеют аргумента gmode.Я полагаю, что после того, что вы были:

library(igraph)
# We are going to use graph_from_adjacency_matrix, so we need a matrix
# rather than a data frame
df <- cbind(Bob, Kate, David, Jack, Peter)

W <- graph_from_adjacency_matrix(df)

V(W)$name
# [1] "Bob"   "Kate"  "David" "Jack"  "Peter"

degree(W)
#   Bob  Kate David  Jack Peter 
#     1     3     2     3     3 
closeness(W)
#        Bob       Kate      David       Jack      Peter 
# 0.05000000 0.08333333 0.11111111 0.16666667 0.05000000 
# Warning message:
# In closeness(W) :
#   At centrality.c:2784 :closeness centrality is not well-defined for disconnected graphs
betweenness(W)
#   Bob  Kate David  Jack Peter 
#     0     4     0     3     0 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...