[R] weighted network centrality measures by network size
Suzen, Mehmet
msuzen at gmail.com
Thu Aug 7 12:32:06 CEST 2014
Hi Jenny,
Have you tried igraph before? See, http://igraph.org/r/doc/
There are couple of centrality measures there.
Best,
-m
On 6 August 2014 02:50, Jenny Jiang <jiangyunbei at y7mail.com> wrote:
> Dear R-help,
>
> My name is Jenny Jiang and I am a Finance Honours research
> student from the University of New South Wales Australia. Currently my
> research project involves the calculating of some network centrality
> measures in R, which are degree, closeness, betweenness and eigenvector. However I am having some issue regarding to the calculation of
> the weighted centrality measures by network size. For example, currently
> my code allows me to calculate centrality measures for each firm year,
> and now I would like to calculate centrality measures weighted by the
> firm network size for each firm year.
>
> My current code is like the following:
>
> install.packages("statnet")
>
> library(statnet)
>
> #read csv
> data <- read.csv("D:\\Users\\z3377013\\Desktop\\networknew1.csv",header=TRUE)
> #companies <- unique(data$CompanyID_)
> #years <- unique(data$Year)
> pairs <- unique(data[,c(1,3)])
> #directors <- unique(c(data$DirectorID_,data$DirectorID_Connected))
> #director_map <- 1:length(directors)
> #names(director_map) <- c(as.character(directors))
>
> #for (i in 1:nrow(data)) {
> # data[i,2] = director_map[as.character(data[i,2])]
> # data[i,4] = director_map[as.character(data[i,4])]
> #}
>
> sink("D:\\Users\\z3377013\\Desktop\\measure1.csv")
> for (i in 1:nrow(pairs)) {
> d <- subset(data, CompanyID_==pairs[i,1]&Year==pairs[i,2])
> directors <- unique(c(d$DirectorID_,d$DirectorID_Connected))
> director_map <- 1:length(directors)
> names(director_map) <- c(as.character(directors))
> for (j in 1:nrow(d)) {
> d[j,2] = director_map[as.character(d[j,2])]
> d[j,4] = director_map[as.character(d[j,4])]
> }
>
> net<-network(d[,c(2,4)],directed=F,loops=F,matrix.type="edgelist")
>
> degree <- degree(net, cmode="freeman", gmode="graph")
> closeness <- closeness(net,gmode="graph",cmode="undirected")
> betweenness <- betweenness(net,gmode="graph",cmode="undirected")
> evcent <- evcent(net,gmode="graph",use.eigen=TRUE)
>
> write.csv(cbind(pairs[i,], directors, degree, closeness, betweenness, evcent), row.names=FALSE)
> }
> sink()
>
> And an example of my data structure is like the following:
>
> CompanyID_ DirectorID_ Year DirectorID_Connected
> 900 3700068021 2003 3699838021
> 900 3700418032 2003 3699838021
> 900 3700598032 2003 3699838021
> 900 3700898032 2003 3699838021
> 900 3703478063 2003 3699838021
> 900 3703628063 2003 3699838021
> 900 3703838063 2003 3699838021
> 900 3703998063 2003 3699838021
> 900 3699838021 2003 3700068021
> 900 3700418032 2003 3700068021
> 900 3700598032 2003 3700068021
> 900 3700898032 2003 3700068021
> 900 3703478063 2003 3700068021
> 900 3703628063 2003 3700068021
> 900 3703838063 2003 3700068021
> 900 3703998063 2003 3700068021
> 900 3699838021 2003 3700418032
> 900 3700068021 2003 3700418032
> 900 3700598032 2003 3700418032
> 900 3700068021 2004 3699838021
> 900 3700418032 2004 3699838021
> 900 3700598032 2004 3699838021
> 900 3700898032 2004 3699838021
> 900 3703478063 2004 3699838021
> 1290 1604538114 2003 427207466
> 1290 3556906472 2003 427207466
> 1290 3701108032 2003 427207466
> 1290 3708458104 2003 427207466
> 1290 3708478104 2003 427207466
> 1290 3711248135 2003 427207466
> 1290 10167110612 2003 427207466
> 1290 10271811383 2003 427207466
>
> where for each firm-year I have a list of directors and their corresponding connected directors within that firm-year.
>
> If you could
> provide me the R code regarding to how to calculate the weighted measures by network size that that would be really
> helpful.
>
> I cannot be more than appreciated.
>
> Best regards
>
> Jenny
>
> [[alternative HTML version deleted]]
>
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
More information about the R-help
mailing list