フィルターのクリア

get authority and hub scores from centrality function

13 ビュー (過去 30 日間)
Laszlo Bodnar
Laszlo Bodnar 2017 年 1 月 3 日
回答済み: Christine Tobler 2017 年 1 月 3 日
I calculated authority and hub scores of a network's nodes using the following function:
hub_ranks = centrality(G,'hubs');
auth_ranks = centrality(G,'authorities');
(Source: https://www.mathworks.com/help/matlab/ref/graph.centrality.html)
As the function's description says, "both scores are normalized such that the sum of all hubs scores is 1 and the sum of all authorities scores is 1".
Now I would like to extract the absolute scores themselves - not the normalized ones. Only problem is, I do not know how the normalization took place hence I cannot extract the original scores myself. Is there a workaround to this matter?

採用された回答

Christine Tobler
Christine Tobler 2017 年 1 月 3 日
The description is a bit misleading here: the 'hubs' and 'authorities' values for all nodes are both basically singular vectors of the adjacency matrix of the graph. So there are no absolute scores, every rescaling of the nodes is as good as any other.
This gets a bit more complicated when you have several disconnected components. In this case, MATLAB computes the 'hubs' / 'authorities' scores for each component separately, and rescales them so that the overall sum is still 1.
You can change that behavior yourself by taking a look at the MATLAB code for hubs and authorities:
edit digraph/centrality
Copy the parts needed for 'hubs' and 'authorities' into a new function, and you can implement exactly the behavior you want.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNetworks についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by