python复杂网络库networkx:算法
http://blog.csdn.net/pipisorry/article/details/54020333
Networks算法Algorithms
最短路径Shortest Paths
简单路径Simple Paths
all_simple_paths(G, source, target[, cutoff]) |
Generate all simple paths in the graph G from source to target. |
shortest_simple_paths(G, source, target[, ...]) |
Generate all simple paths in the graph G from source to target, starting from shortest ones. |
Note:nx.all_simple_paths只能迭代一次。
链接分析Link Analysis
PageRank Hits
链接预测Link Prediction
链接预测算法
resource_allocation_index(G[, ebunch]) |
Compute the resource allocation index of all node pairs in ebunch. |
jaccard_coefficient(G[, ebunch]) |
Compute the Jaccard coefficient of all node pairs in ebunch. |
adamic_adar_index(G[, ebunch]) |
Compute the Adamic-Adar index of all node pairs in ebunch. |
preferential_attachment(G[, ebunch]) |
Compute the preferential attachment score of all node pairs in ebunch. |
cn_soundarajan_hopcroft(G[, ebunch, community]) |
Count the number of common neighbors of all node pairs in ebunch using community information. |
ra_index_soundarajan_hopcroft(G[, ebunch, ...]) |
Compute the resource allocation index of all node pairs in ebunch using community information. |
within_inter_cluster(G[, ebunch, delta, ...]) |
Compute the ratio of within- and inter-cluster common neighbors of all node pairs in ebunch. |
Note: 返回的基本都是iterator of 3-tuples in the form (u, v, p)。iterator只能迭代一次,否则为空了。
不指定ebunch的话就是计算所有没有边的点。If ebunchis None then all non-existent edges in the graph will be used.
单纯cn个数的计算
def commonNeighbor(G, ebunch=None):
'''
compute num of common neighbor
'''
import networkx as nx
if ebunch is None:
ebunch = nx.non_edges(G)
def predict(u, v):
cnbors = list(nx.common_neighbors(G, u, v))
return len(cnbors)
return ((u, v, predict(u, v)) for u, v in ebunch)
组件Components
connectivity连通性
连通子图Connected components
is_connected(G) |
Return True if the graph is connected, false otherwise. |
number_connected_components(G) |
Return the number of connected components. |
connected_components(G) |
Generate connected components. |
connected_component_subgraphs(G[, copy]) |
Generate connected components as subgraphs. |
node_connected_component(G, n) |
Return the nodes in the component of graph containing node n. |
连通子图计算示例
from networkx.algorithms import traversal, components
weighted_edges = pd.read_csv(os.path.join(CWD, 'middlewares/network_reid.txt'), sep=',',
header=None).values.tolist()
g = nx.Graph()
g.add_weighted_edges_from(weighted_edges)
# print('#connected_components of g: {}'.format(nx.number_connected_components(g)))
component_subgs = components.connected_component_subgraphs(g)
for component_subg in component_subgs:
])
Strong connectivity
Weak connectivity
Attracting components
Biconnected components
Semiconnectedness
Connectivity
Connectivity and cut algorithms
遍历Traversal
深度优先遍历
广度优先遍历
边的深度优先遍历
networkx算法示例
使用networkx计算所有路径及路径距离
[jupyter]
[python—networkx:求图的平均路径长度并画出直方图]
社区发现
[复杂网络社区结构发现算法-基于python networkx clique渗透算法 ]
from: http://blog.csdn.net/pipisorry/article/details/54020333
ref: [Algorithms]
[Networkx Reference]*[NetworkX documentation]*[doc NetworkX Examples]*[NetworkX Home]
python复杂网络库networkx:算法的更多相关文章
- python复杂网络库networkx:基础
http://blog.csdn.net/pipisorry/article/details/49839251 其它复杂网络绘图库 [SNAP for python] [ArcGIS,Python,网 ...
- python复杂网络库networkx:绘图draw
http://blog.csdn.net/pipisorry/article/details/54291831 networkx使用matplotlib绘制函数 draw(G[, pos, ax, h ...
- Python 并发网络库
Python 并发网络库 Tornado VS Gevent VS Asyncio Tornado:并发网络库,同时也是一个 web 微框架 Gevent:绿色线程(greenlet)实现并发,猴子补 ...
- python复杂网络分析库NetworkX
NetworkX是一个用Python语言开发的图论与复杂网络建模工具,内置了常用的图与复杂网络分析算法,可以方便的进行复杂网络数据分析.仿真建模等工作.networkx支持创建简单无向图.有向图和多重 ...
- Python常用的库简单介绍一下
Python常用的库简单介绍一下fuzzywuzzy ,字符串模糊匹配. esmre ,正则表达式的加速器. colorama 主要用来给文本添加各种颜色,并且非常简单易用. Prettytable ...
- 使用python网络库下载
下载1000次网页资源 1,普通循环方式下载1000次,非常慢 #!/usr/bin/python # -*- coding: utf-8 -*- import sys import os impor ...
- python基于协程的网络库gevent、eventlet
python网络库也有了基于协程的实现,比较著名的是 gevent.eventlet 它两之间的关系可以参照 Comparing gevent to eventlet, 本文主要简单介绍一下event ...
- day-9 sklearn库和python自带库实现最近邻KNN算法
K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一.该方法的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的 ...
- python爬虫#网络请求requests库
中文文档 http://docs.python-requests.org/zh_CN/latest/user/quickstart.html requests库 虽然Python的标准库中 urlli ...
随机推荐
- js实现两种实用的排序算法——冒泡、快速排序
分类:js (4443) (0) 零:数据准备,给定数组arr=[2,5,4,1,7,3,8,6,9,0]; 一:冒牌排序 1思想:冒泡排序思想:每一次对比相邻两个数据的大小,小的排在前面,如果前 ...
- 图片处理之 Base64
网页上的图片资源如果采用 http 形式的 url 的话都会额外发送一次请求,网页发送的 http 请求次数越多,会造成页面加载速度越慢.而采用Base64格式的编码,将图片转化为字符串后,图片文件会 ...
- Google Cardboard的九轴融合算法——基于李群的扩展卡尔曼滤波
Google Cardboard的九轴融合算法 --基于李群的扩展卡尔曼滤波 极品巧克力 前言 九轴融合算法是指通过融合IMU中的加速度计(三轴).陀螺仪(三轴).磁场计(三轴),来获取物体姿态的方法 ...
- [LeetCode] Add Bold Tag in String 字符串中增添加粗标签
Given a string s and a list of strings dict, you need to add a closed pair of bold tag <b> and ...
- .NET CORE 2.0之 httpcontext
HttpContext 在之前的.NET framework 是一个非常常用且强大的类,在.NET CORE2.0中要像以前用是不太方便的了, 要是用sesson 首先需要在startup 的Con ...
- SpringIOC学习二
Spring的IOC容器通过依赖注入DI(dependency injection)来实现程序之间的依赖关系,达到解耦的方式依赖的方式:a.基于xml文件配置的注入 * 构造函数注入 * ...
- python day one 变量,if
一.变量,常量 变量:用于储存和标记信息在内存中,方便日后被调用.操作和修改 常量:固定不变大的量.字母大写 命名规则: 1.由字母数字下划线组成,命名要有意义,区分大小写. 2.命名建议用下划线分割 ...
- 百度API-------热力图
<!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...
- 【无语凝噎(wordless)】
·题目: 西施与范蠡泛舟而去……不对,场景不对,咳咳.在甄嬛前往蓬莱洲之前,她与皇上在碧桐书院告别.为了这可能会长达数月的离别,两个人都似乎有很多话要对对方说,却都无语凝噎.这时,皇上 ...
- [Noi2015]荷马史诗
来自FallDream的博客,未经允许,请勿转载,谢谢. 追逐影子的人,自己就是影子. ——荷马 Allison 最近迷上了文学.她喜欢在一个慵懒的午后,细细地品上一杯卡布奇诺,静静地阅读她爱不释手的 ...