假设我有一个表示节点网络的数组,其中连接的节点被描述为“从节点”和“到节点”:
a = array([(1, 2), (2, 3), (3, 4), (4, 5), (2, 6), (6, 7), (7, 8), (2, 9),
(9, 10), (10, 11), (2, 12), (12, 13), (13, 14), (13, 15), (14, 16)],
dtype=[('fnode', '<i4'), ('tnode', '<i4')])
a['fnode']
array([ 1, 2, 3, 4, 2, 6, 7, 2, 9, 10, 2, 12, 13, 13, 14])
a['tnode']
array([ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16])
我如何最好地将“到节点”组合到它们共享相同“从节点”的列表中?
我追求这种格式:
#from-node to-nodes
1 [2]
2 [3,6,9,12]
3 [4]
4 [5]
5 []
6 [7]
7 [8]
8 []
9 [10]
10 [11]
11 []
12 [13]
13 [14,15]
14 [16]
15 []
16 []
编辑
需要明确的是,我希望没有“到节点”(例如节点 8)的“从节点”与一个空列表相关联。