返回信息流LZ比较菜,不太清楚python的内存机制,想用python来做复杂网络分析,节点数量大概200W,边300W,涉及到求团,社区划分等算法(和现有的社区算法肯定不同啦),选择python的原因是有igraph,networkx等各种库,很方便,画图也方便。就是担心会出现内存不足的问题,求大牛指路[ema1]
这是一条镜像帖。来源:北邮人论坛 / python / #4890同步于 2015/1/16
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖
[问题]小白求问,200W左右节点的复杂网络用python能够处理得过
NIMO1004
2015/1/16镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
参考下 http://stackoverflow.com/questions/7978840/what-scalability-issues-are-associated-with-networkx-the-python-network-analysi
一些个人理解供参考:
igraph最早是作为R的一个库开始的,大部分数据结构功能都是C实现的,python好像就是个调用接口。
networkx则是纯粹的python实现,数据结构是python的,但会使用numpy和scipy的算法。
graph-tool貌似也不错,核心数据结构和算法都是C++……
如果占用物理内存过大应该可以映射到磁盘上吧。我猜
嗯,igraph是用一个c语言库,可以用R,Python调用,不过c语言版各种不好用啊,增删节点之后节点id都会重排,对节点属性定位节点这方面也不太支持。
【 在 reverland 的大作中提到: 】
: 参考下 http://stackoverflow.com/questions/7978840/what-scalability-issues-are-associated-with-networkx-the-python-network-analysi
: 一些个人理解供参考:
: igraph最早是作为R的一个库开始的,大部分数据结构功能都是C实现的,python好像就是个调用接口。
: ...................
嗯,发现了,每次都出现memoryerror,不知道有没有更改python内存限制的方法
【 在 moodyt 的大作中提到: 】
: python下用networkx最多也就10w个节点左右,百万级节点还是推荐斯坦福的暴力工具SNAP~~可以考虑试下SNAP的python版,没用过