attribute_mixing_matrix#
- attribute_mixing_matrix(G, attribute, nodes=None, mapping=None, normalized=True)[source]#
返回属性混合矩阵。
- Parameters:
- G图
NetworkX 图对象。
- attribute字符串
节点属性键。
- nodes列表或可迭代对象(可选)
仅使用容器中的节点构建矩阵。默认是所有节点。
- mapping字典,可选
从节点属性到矩阵中整数索引的映射。 如果未指定,将使用任意顺序。
- normalized布尔值(默认=True)
如果为 False,则返回计数;如果为 True,则返回概率。
- Returns:
- mnumpy 数组
属性对出现的计数或联合概率。
Notes
如果每个节点具有唯一的属性值,未归一化的混合矩阵 将等于邻接矩阵。为了获得更密集的混合矩阵, 可以进行舍入以形成具有相等值的节点组。 例如,以厘米为单位的精确身高(180.79155222, 163.9080892, 163.30095355, 167.99016217, 168.21590163, …)可以舍入为(180, 163, 163, 168, 168, …)。
属性混合矩阵的定义因矩阵是否应包含未出现的属性值的行而异。 这里我们不包括这些空行。但你可以通过输入包含这些值的
mapping
来强制它们出现。Examples
>>> 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) >>> mix_mat array([[0. , 0.25], [0.25, 0.5 ]])