簡體   English   中英

Python - 將一個dicts列表分成單獨的dicts

[英]Python - split a list of dicts into individual dicts

我正在使用HITS算法進行社交網絡分析。 該算法的使用產生兩種不同的度量:集線器得分和權威得分。 生成一個包含兩個基於這些度量的字典的列表,其中一個字典的索引為0,另一個字典的索引為0。

如何刪除總體列表以獲取兩個單獨的詞典? 代碼和輸出如下:

G = nx.read_weighted_edgelist('data.csv', create_using=nx.DiGraph())
HITS_scores = list(nx.hits(G))

Output:
List = Index     Type      Value
       0         dict      {'node1': 0.023, 'node3': 0.017.....'node17': 0.045}
       1         dict      {'node2': 0.042, 'node4': 0.002.....'node16': 0.032}

Desired Output:
hub_score =      dict      {'node1': 0.023, 'node3': 0.017.....'node17': 0.045}
auth_score =     dict      {'node2': 0.042, 'node4': 0.002.....'node16': 0.032}

任何幫助,將不勝感激。

PS我試過尋找答案,但一直無法找到解決方案

您可以使用對象列表的分配來解包迭代,如下所示

hub_score, auth_score = nx.hits(G)

怎么樣:

hub_score = HITS_scores[0]
auth_score = HITS_scores[1]

您也可以不通過編寫list(nx.hits(G))來生成列表,而是以其他方式處理您的數據。

提供的答案gilch應該做的伎倆。 但是,如果您遇到列表,則可以拉出單個dict條目並將其分配如下:

hub_score = HITS_scores[0]
auth_score = HITS_scores[1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM