使用邻接矩阵和欧几里德距离的 networkx 中的条件概率

问题描述

我是 networkx 的新手,只是想了解如何从下面的 |x-w| 中找到边缘持久性和非边缘持久性参数这里似乎是维度 nx1 的形成边缘之间的欧几里得距离,yij 是维度 nxn 的邻接矩阵,我假设这些持久性参数的维度是 nx1,请帮助我理解这一点。这是我的代码和条件概率函数>

〖log〗_i⁡t(P_iJ^t )=y_ⅈj^((t-1) ) γ_+^((t) )⋅(1-y_ij^((t-1) ) ) β^t+‖x_i-w_j^((t) ) ‖

enter image description here

    def bipartite_network(csv_input):
        bipartite_network = nx.Graph()
        bipartite_network.add_edges_from(
            [(row['director'],row['company']) for idx,row in csv_input.iterrows()])
    
        pos = {node:[0,i] for i,node in enumerate(csv_input['director'])}
        #position_director = pos
        position_company = {node:[1,node in enumerate(csv_input['company'])}
        pos.update(position_company)
        
        #nx.draw(bipartite_network,pos,with_labels=False)
        #nx.draw_networkx_labels(bipartite_network,pos)
        
        degX,degY = bipartite.degrees(bipartite_network,csv_input['director'])
        return degX,degY,bipartite_network,pos

def calculate_distances(y,position):
    
    lengths={}
    for edge in y.edges():
       startnode=edge[0]
       endnode=edge[2]
       #print(endnode)
       lengths[edge]=round(math.sqrt(((position[endnode][2]-position[startnode][2])**2)+
                                      ((position[endnode][0]-position[startnode][0])**2)),2)
    print(lengths)
    
    return lengths

degX_2004,degY_2004,bipartite_network_2004,pos_2004 = bipartite_network(csv_2004)

A_2004 = Adjacencymatrix(bipartite_network_2004)

eculidean_distances = calculate_distances(bipartite_network_2004,pos_2004)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...