【问题标题】:Convert linkage matrix to adjacency matrix将链接矩阵转换为邻接矩阵
【发布时间】:2019-06-18 08:19:41
【问题描述】:

给定:来自层次聚类的链接矩阵(例如单链接) 想要:来自该链接矩阵的邻接矩阵

在 python(例如 networkx 或任何其他库或方法)中,这个目标是如何实现的?因为我不认为我是第一个遇到这个问题的人,所以我希望有一些配方/库函数可以解决这个问题

【问题讨论】:

    标签: python networkx adjacency-matrix


    【解决方案1】:

    Networkx 具有 nx.to_pandas_adjacency 函数,该函数返回带有给定图的邻接矩阵的 pandas 数据帧。您应该从链接列表创建一个 networkx 图,然后将其转换为邻接矩阵:

    import networkx as nx
    
    links = [
        (1, 2),
        (2, 3),
        (1, 4),
        (1, 3),
        (4, 5),
        (1, 5)
    ]
    
    G = nx.Graph()
    G.add_edges_from(links)
    nx.to_pandas_adjacency(G)
    
        1       2       3       4       5
    1   0.0     1.0     1.0     1.0     1.0
    2   1.0     0.0     1.0     0.0     0.0
    3   1.0     1.0     0.0     0.0     0.0
    4   1.0     0.0     0.0     0.0     1.0
    5   1.0     0.0     0.0     1.0     0.0
    

    【讨论】:

      猜你喜欢
      • 2021-12-31
      • 2021-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多