在Python 2.7上使用Networkx,我一直在試圖建立一個約2M用戶和880M邊緣的圖。我正在使用包含邊緣列表的大約17Gb的文本文件。 我試過使用函數nx.read_edgelist(),但使用大約250Gb或RAM(我正在遠程服務器上工作)後,我的程序被殺害。爲什麼Networkx會佔用我所有的內存?
我的問題是:networkx使用那麼多內存是否正常?或者,也許我收集數據時出錯了? 我一直在考慮使用另一個庫,我發現這兩個iGraph和圖形工具看起來非常有效。有人會有任何建議嗎?
謝謝!
編輯:我的文件實際上包含880M的邊緣,而不是88M
科拉斯嗨固定 - 我給了一個答案,但不是100%肯定它是正確的。通常我會使用評論,但這太長了。如果解決這個問題(或不解決問題),請讓我知道,以便我可以適當地編輯/刪除我的答案。 – Joel
您好,Joel,非常感謝您的回答! 我目前正在嘗試你的解決方案,當然我會讓你更新(計算通常需要很長時間,我可能會在星期一給你一個結果)。 然而,我應該糾正我自己的問題:我實際上處理880M邊緣(我在閱讀時跳過了0),這可能解釋我的困難... –