在NetworkX中,按年分组可以通过以下步骤来计算年连接数:
import networkx as nx
import pandas as pd
G = nx.Graph() # 创建无向图
# G = nx.DiGraph() # 创建有向图
# 假设有一个包含年份和连接关系的数据集,例如一个DataFrame
data = pd.DataFrame({'Year': [2019, 2019, 2020, 2020, 2020],
'Node1': ['A', 'B', 'A', 'C', 'D'],
'Node2': ['B', 'C', 'C', 'D', 'E']})
# 遍历数据集,添加节点和边
for _, row in data.iterrows():
G.add_edge(row['Node1'], row['Node2'], year=row['Year'])
yearly_connections = {}
for year in set(data['Year']):
connections = G.subgraph([(u, v) for u, v, attrs in G.edges(data=True) if attrs['year'] == year])
yearly_connections[year] = connections.number_of_edges()
以上代码将按年份分组计算了每年的连接数,并将结果存储在yearly_connections
字典中,其中键是年份,值是该年的连接数。
NetworkX是一个用于创建、操作和研究复杂网络的Python库。它提供了丰富的功能和算法,用于分析网络结构和属性。通过使用NetworkX,可以轻松地构建和操作各种类型的网络,包括有向图和无向图。
应用场景:
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云