1
我想知道如何找到安打R.函數,下面是我的代碼:如何獲得R工具中的HITS函數?
library(igraph)
library(proxy)
A <- matrix(c(0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0,
0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0),
nrow=6, ncol=6, byrow=TRUE)
G <- graph.adjacency(A, mode=c("directed"), weighted=NULL)
kmax <- 6
op <- HITS(G,kmax)
這是我得到的錯誤:我編寫
Error in t.default(adj) : argument is not a matrix
上面提到的HITS
函數,我不知道如何在大型矩陣的循環函數中實現它。
HITS<-function(g,k)
{
adj <- get.adjacency(g)
nodes <- dim(adj)[1]
auth <- c(rep(1,nodes))
hub <- c(rep(1,nodes))
for(i in 1:k){
t_adj <- t(adj)
auth <- t_adj%*%hub
hub <- adj%*%auth
sum_sq_auth <- sum(auth*auth)
sum_sq_hub <- sum(hub*hub)
auth <- auth/sqrt(sum_sq_auth)
hub <- hub/sqrt(sum_sq_hub)
}
result <- c(auth,hub)
return(result)
}
你在找這個? http://igraph.org/r/doc/kleinberg.html –