python - 如何在 python-igraph 中删除边缘属性
问题描述
我想从python-igraph
. 等效的 igraph R 函数被巧妙地调用delete_edge_attr
。我无法在 Python 中找到等效的函数/方法……有吗?
如果没有,还有其他方法吗?(我尝试了一个简单的方法g.es['edge_attr']= []
,但这不起作用)。
示例代码
g = ig.Graph.Tree(10, 2) #Generate random graph
g_betweenness = g.betweenness() #Calculate betweenness for graph
g['betweenness'] = betweenness #Assign betweenness as edge attribute
print(g.attributes())
g['betweenness'] = [] #Attempt to remove betweenness edge attribute (incorrect)
print(g.attributes())
输出
['betweenness']
['betweenness']
期望的输出
['betweenness']
[]
解决方案
您可能无法将其设置为空数组,但您对直接更改的直觉EdgeSequence
已经相当不错了。您可以简单地使用 Python 的 internal 删除参数del()
,我在下面提供了一个最小示例:
import igraph
# minimal graph
G = igraph.Graph()
G.add_vertices(2)
G.add_edge(0,1)
# add your property
G.es['betweenness'] = [1]
# print edge attribute (note the difference to your example)
print(G.es.attribute_names())
# output: ['weight']
# delete argument
del(G.es['weight'])
# print again
print(G.es.attribute_names())
# output: []
推荐阅读
- php - 我可以在 PHP/PDO 中使用 PostgreSQL 简单查询模式吗?
- api - 通过 URL 而非 XHR 网络请求发送有效负载进行身份验证
- css - 仅当子级位于 Chrome 中的父级之外时出现奇怪的 CSS 投影行为
- limit - OpenModelica - 在模拟过程中限制关节位置
- javascript - 我想找到集群之间的中心点
- html - 无法从本地文件系统下载 xml 文件
- swift - 异步等待“表达式类型不明确,没有更多上下文”错误 - 在 swiftUI 中
- php - 如何处理冬夏时节
- reactjs - 自定义 Material UI 动画持续时间
- docker - 使用 Docker Desktop 和 WSL2 时,我的卷安装在哪里?