微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python networkx允许重复节点

如何解决python networkx允许重复节点

我试图查看3列并创建一个迭代树列表。

enter image description here

我想遍历顶部,直到找到空的父代码显示完整的树视图。

我正在使用的代码

df = df.fillna('null')
G = nx.DiGraph()
G.add_edges_from(zip(df['ChildCode'],df['parentCode'] ))
G = nx.relabel_nodes(G,mapping=df.set_index('ChildCode')['ChildOrg'].to_dict())    

我对节点的重新标记正在删除重复的值,即财务,因此结果有点差。如果可以的话,我可以在重标记时允许重复的节点吗?。

由于某种原因,我得到的结果无法识别重复的childorg条目并将其分配给同一父代码

enter image description here

我期望的结果如下:

enter image description here

解决方法

如果df['null']包含数字,则它们不能下标。例如,123456[1:3]将引发相同的错误。我想您需要以下代码:

df['Path'] = df['null'].apply(lambda x: '/'.join(str(x)[-2::-1]))

另一个潜在的问题是用'null'填充缺失值。您是否要在这种情况下返回“ un”?如果不是,请分别处理这些值。例如,

df['Path'] = df['null'].apply(lambda x: '/'.join(str(x)[-2::-1]) if x != 'null' else 'null')

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。