profile_generate_subsets.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:massivedatans 作者: JohannesBuchner 项目源码 文件源码
def generate_subsets_graph(data_mask, live_pointsp, graph, _):
    # generate data subsets which share points.
    firstmember = numpy.where(data_mask)[0][0]
    allp = numpy.unique(live_pointsp[:,data_mask].flatten())
    if len(live_pointsp[:,firstmember]) == len(allp):
        # trivial case: all live points are the same across data sets
        yield data_mask, live_pointsp[:,firstmember]
        return

    subgraphs = list(networkx.connected_component_subgraphs(graph, copy=False))
    if len(subgraphs) == 1:
        yield data_mask, allp
        return

    # then identify disjoint subgraphs
    for subgraph in subgraphs:
        print 'networkx subgraph:', subgraph.nodes()
        member_data_mask = numpy.zeros(len(data_mask), dtype=bool)
        member_live_pointsp = []
        for nodetype, i in subgraph.nodes():
            if nodetype == 0:
                member_data_mask[i] = True
            else:
                member_live_pointsp.append(i)
        yield member_data_mask, member_live_pointsp
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号