求解网络连通系数

网络连通系数是衡量网络抗毁性的一种重要指标

# -*- coding: utf-8 -*-
"""
Created on Sat Mar  6 13:50:15 2021

@author: Administrator
"""

import networkx as nx
import networkx.algorithms.components as com

#计算一个网络的连通系数
def get_connect_factor():
    
  G = nx.Graph()
  filestr = ""
  
  with open("all.txt") as files:
     for line in files:
         filestr += line.strip()
  
  #将字符串转换成列表
  matrix = eval(filestr)

  nodes = range(len(matrix))
  G.add_nodes_from(nodes)
 
  for i in range(len(matrix)):
    for j in range(len(matrix)):
      if(matrix[i][j] == 1):
		G.add_edge(i, j)
  
  #蝴蝶网络中总的节点数目      
  n = len(G.nodes())
 # print(n)
  
  #获得网络中连通分支的数目
  w = com.number_connected_components(G)
#  print(w)

  end = []
  #获得每一个连通分支的平均最短路径
  for cc in  sorted(com.connected_components(G),key = len):
      #获得每一个连通分支
      suG = G.subgraph(cc).copy()
      #获得每一个连通分支的平均最短路径长度
      ss = nx.average_shortest_path_length(suG)
   #   print(ss)
      #获得每一个连通分支中的节点数目
      suN = len(suG.nodes())
   #   print(suN)
      end.append((suN /float(n)) * ss) 
    #  print(end)
   
  c = 1.0 /(w * sum(end))
  print("网络的连通系数为:")
  print(c)
    
    
get_connect_factor()

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python求解回归方程的系数有多种方法。其中一种是使用全批量梯度下降法(Full batch gradient descent)。这种方法使用梯度下降的方式,通过多次迭代来逐步优化回归方程的系数。在代码中,可以看到使用了全批量梯度下降的函数`batch_gradient`来更新回归方程的系数。 另一种方法是使用正规方程法(Normal equation method)。这种方法通过求解矩阵方程来直接计算回归方程的系数。在代码中,虽然没有直接展示求解系数的过程,但是可以看到在函数`iteration`中调用了`batch_gradient`函数来进行迭代更新,从而求解回归方程的系数。 总结起来,在Python求解回归方程系数的过程包括使用全批量梯度下降法和正规方程法两种方法,通过多次迭代或直接求解矩阵方程来进行计算。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Python解线性回归方程中的系数向量](https://blog.csdn.net/weixin_42274933/article/details/123530111)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [基于jupyter notebook的python编程—–通过原理,求解分析线性回归方程的的待定系数a和判定系数R2](https://download.csdn.net/download/weixin_38564718/13750360)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值