The hub scores of the vertices are defined as the principal eigenvector of AAT, where A is the adjacency matrix of the graph.
Usage
hub_score(graph, scale = TRUE, weights = NULL, options = arpack_defaults())
authority_score(
graph,
scale = TRUE,
weights = NULL,
options = arpack_defaults()
)
Arguments
- graph
The input graph.
- scale
Logical scalar, whether to scale the result to have a maximum score of one. If no scaling is used then the result vector has unit length in the Euclidean norm.
- weights
Optional positive weight vector for calculating weighted scores. If the graph has a
weight
edge attribute, then this is used by default. This function interprets edge weights as connection strengths. In the random surfer model, an edge with a larger weight is more likely to be selected by the surfer.- options
A named list, to override some ARPACK options. See
arpack()
for details.
Value
A named list with members:
- vector
The hub or authority scores of the vertices.
- value
The corresponding eigenvalue of the calculated principal eigenvector.
- options
Some information about the ARPACK computation, it has the same members as the
options
member returned byarpack()
, see that for documentation.
Details
Similarly, the authority scores of the vertices are defined as the principal eigenvector of ATA, where A is the adjacency matrix of the graph.
For undirected matrices the adjacency matrix is symmetric and the hub scores are the same as authority scores.
References
J. Kleinberg. Authoritative sources in a hyperlinked environment. Proc. 9th ACM-SIAM Symposium on Discrete Algorithms, 1998. Extended version in Journal of the ACM 46(1999). Also appears as IBM Research Report RJ 10076, May 1997.
See also
eigen_centrality()
for eigenvector centrality,
page_rank()
for the Page Rank scores. arpack()
for
the underlining machinery of the computation.
Centrality measures
alpha_centrality()
,
betweenness()
,
closeness()
,
diversity()
,
eigen_centrality()
,
harmonic_centrality()
,
page_rank()
,
power_centrality()
,
spectrum()
,
strength()
,
subgraph_centrality()
Examples
## An in-star
g <- make_star(10)
hub_score(g)$vector
#> [1] 3.330669e-16 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00
#> [6] 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00
authority_score(g)$vector
#> [1] 1 0 0 0 0 0 0 0 0 0
## A ring
g2 <- make_ring(10)
hub_score(g2)$vector
#> [1] 1 1 1 1 1 1 1 1 1 1
authority_score(g2)$vector
#> [1] 1 1 1 1 1 1 1 1 1 1