I'm using the igraph package in R to analyze network data. I'm currently trying to calculate some centrality measures for the vertices of my graph and the corresponding centralization scores. My network is both directed and weighted.
require(igraph)
set.seed(12152)
m <- expand.grid(from = 1:4, to = 1:4)
m <- m[m$from != m$to, ]
m$weight <- sample(1:7, 12, replace = T)
g <- graph.data.frame(m)
I have no trouble using the closeness function to obtain the closeness centrality for each vertex:
closeness(g, mode = "in")
closeness(g, mode = "out")
closeness(g, mode = "total")
However, it appears that the centralization.closeness function from igraph does not work for directed graphs. igraph does include a way to calculate a custom centralization from the individual centrality scores in a graph (the centralize.scores function), but that function requires the user to specify the theoretical maximum of the centrality measure, and it's not obvious to me what that would be in this weighted example (I believe the built-in centralization.closeness.tmax function in igraph assumes an unweighted graph).
Does anyone know how to calculate a centralization score in a weighted graph? Is there a good way to accomplish this in R with igraph or some other package?
