我创建了以下算法来计算我所建立的网络的中介中心性。网络保存在一个大矩阵62589x62589中。
getBetween<-function(matIn)
{
betScore<-c()
for(i in 1:nrow(matIn))
{
tmpTF<-(matIn[i, ] !=0)
tmp1<-matIn[i, tmpTF]
mat2<-matrix(0, length(tmp1), length(tmp1))
rownames(mat2)<-rownames(matIn)[tmpTF]
colnames(mat2)<-rownames(matIn)[tmpTF]
for(j in 1:nrow(mat2))
{
for(k in 1:ncol(mat2))
{
if(mat2[j,k] > matIn[rownames(mat2)[j], colnames(mat2)[k]])
{
mat2[j,k] <-0
}
}
}
betScore<-c(betScore, sum(mat2 > 0))
}
}
然而,迭代超过4亿个值是非常低效的。在快速搜索后我找不到任何可以计算中介中心性的包,有没有人知道。另外,任何人都可以给我任何有关我的算法实现以及如何改进的指示吗?
由于