當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python NetworkX attribute_mixing_matrix用法及代碼示例


本文簡要介紹 networkx.algorithms.assortativity.attribute_mixing_matrix 的用法。

用法:

attribute_mixing_matrix(G, attribute, nodes=None, mapping=None, normalized=True)

返回屬性的混合矩陣。

參數

G圖形

NetworkX 圖形對象。

attributestring

節點屬性鍵。

nodes: list or iterable (optional)

僅使用容器中的節點來構建矩陣。默認為所有節點。

mapping字典,可選

從節點屬性映射到矩陣中的整數索引。如果未指定,將使用任意順序。

normalized布爾(默認=真)

如果為 False,則返回計數,如果為 True,則返回概率。

返回

m: numpy 數組

屬性對出現的計數或聯合概率。

注意

如果每個節點具有唯一的屬性值,則非歸一化混合矩陣將等於鄰接矩陣。為了獲得更密集的混合矩陣,可以執行舍入以形成具有相等值的節點組。例如,以厘米為單位的人的確切身高 (180.79155222, 163.9080892, 163.30095355, 167.99016217, 168.21590163, ...) 可以四舍五入為 (180, 163, 163, 168, 168, ...)。

屬性混合矩陣的定義因矩陣是否應包含未出現的屬性值的行而異。這裏我們不包括這樣的empty-rows。但是您可以通過輸入包含這些值的mapping 來強製它們出現。

例子

>>> G = nx.path_graph(3)
>>> gender = {0: 'male', 1: 'female', 2: 'female'}
>>> nx.set_node_attributes(G, gender, 'gender')
>>> mapping = {'male': 0, 'female': 1}
>>> mix_mat = nx.attribute_mixing_matrix(G, 'gender', mapping=mapping)
>>> # mixing from male nodes to female nodes
>>> mix_mat[mapping['male'], mapping['female']]
0.25

相關用法


注:本文由純淨天空篩選整理自networkx.org大神的英文原創作品 networkx.algorithms.assortativity.attribute_mixing_matrix。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。