我使用networkx创建了一个有向图的节点和边缘网络。 它包括银行账户之间的银行交易,其中每个银行账户都是一个节点,边缘是使用发送和接收账户节点创建的。我从所有网络中选择了一个节点,我试图找到使用G.in_edges()函数发送给它的所有邻居。从那里我想找到它的邻居传入的邻居等等,直到没有更多的邻居。示例如下面的屏幕截图所示:
我尝试过编写以下代码:
node_to_investigate = ['somenNodeName']
originalTransactions = {}
def scanNode(node_to_investigate):
inEdges = G.in_edges(node_to_investigate)
if len(inEdges) == 0:
print('No incoming transactions')
#return True
else:
for transaction in inEdges:
if scanNode(findNode(transaction.data.v)):
originalTransactions.add(transaction)
print(originalTransactions)
final_node = scanNode(node_to_investigate)
print(final_node)