计算无向网络的一般拓扑重叠矩阵

gtom的Python项目详细描述


此包采用无向的未加权scipy.sparse邻接 矩阵作为输入,使用m+1步计算gtom(m)方法 邻居(1)。它是高效的,可用于并行 一次只为几个节点调用函数进行计算。

(1)*Gene network interconnectedness and the generalized topological overlap measure*, A.M.Yip和S.Horvath,BMC生物信息学2007 8:22

安装

$ pip install gtom

示例

重新创建技术报告[1]图3中的面板A和C:

#!pythonimportmatplotlib.pyplotasplimportnetworkxasnxfromgtomimportgtomimportscipy.sparseassprsimportnumpyasnpedges=[(0,1),(1,2),(0,3),(0,4),(0,5),(0,7),(1,3),(1,4),(1,6),(1,8),(1,9),(1,10),(5,6),(7,8)]G=nx.Graph()G.add_edges_from(edges)pos=nx.spring_layout(G)labels={n:str(n+1)forninG.nodes()}nx.draw(G,pos=pos)nx.draw_networkx_labels(G,pos=pos,labels=labels)N=G.number_of_nodes()edges=np.array(edges,dtype=int)A=sprs.csc_matrix((np.ones((edges.shape[0],)),(edges[:,0],edges[:,1])),dtype=float,shape=(N,N))A+=A.Tprint("recreate results from figure 3 in [1]")print("       |\t(i,j)=(1,2)\t(i,j)=(1,3)\t(i,j)=(2,3)")print("---------------------------------------------------------")forminrange(3):T=gtom(A,m)print(" m = %d |\t%f\t%f\t%f"%(m,T[0,1],T[0,2],T[1,2]))pl.show()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么maven enforcer插件在maven版本3.6.1中失败,但在3.6.2中通过?   尝试从字符串获取日期时发生java ParseException   java使用ArrayList查找匹配的值。contains()并将其从ArrayList中删除   javascript UTF8编码在飞碟中不起作用   java Android:设备启动时是否可以访问数据库?   java如何在蛇游戏中创建网格   java颜色背景不起作用   java是否可以使用实例pojo与JDBC模板一起插入?   在Tomcat WebApp中运行的Java代码比从JVM调用时运行得慢得多   java GUI添加了组件,但没有显示空白框架   java计算圆中的每个笛卡尔点   sockets Java应用程序在中挂起。hasNext();   雅加达ee Java ee 7批处理API MultiResourceItemReader对应项   java获取当前jsp中的完整文件路径   java字符串数组添加重复项