검색했지만 에지 가중치가있는 그래프를 만드는 방법에 대한 예제가 많이 있지만 꼭지점 가중치가있는 그래프를 만드는 방법은 나와 있지 않습니다. 나는 그것이 가능한지 궁금해하기 시작합니다.igraph를 사용하여 파이썬에서 정점 가중치로 그래프를 만드는 방법은 무엇입니까?
igraph를 사용하여 정점 가중 그래프를 만들 수 있으면 igraph를 사용하여 가중치 독립 또는 다른 가중치를 계산할 수 있습니까?
검색했지만 에지 가중치가있는 그래프를 만드는 방법에 대한 예제가 많이 있지만 꼭지점 가중치가있는 그래프를 만드는 방법은 나와 있지 않습니다. 나는 그것이 가능한지 궁금해하기 시작합니다.igraph를 사용하여 파이썬에서 정점 가중치로 그래프를 만드는 방법은 무엇입니까?
igraph를 사용하여 정점 가중 그래프를 만들 수 있으면 igraph를 사용하여 가중치 독립 또는 다른 가중치를 계산할 수 있습니까?
지금까지 내가 아는 한, 가중 정점에 대한 인수를 사용할 수 igraph에있는 아무 기능이없는 :
나는 나는 그것이 실제 여기 iGraph 방법을 찾기 위해 발견, 당신에게이 페이지를 제안했다. 그러나 R을위한 Bioconductor suite의 일부인 SANTA 패키지는 가중치가 매겨진 정점에 대한 루틴을 가지고 있습니다. (당신이 bioconductor in python를 실행할 수 있습니다 어쩌면 것 같다.)또 다른 해키 옵션을 사용하는 것입니다 (가능하면) 비가 중 igraph에서 루틴 후 다시 무게입니다. 예 : 가중 최대 독립 집합이 같은 :
def maxset(graph,weight):
ms = g.maximal_independent_vertex_sets()
w = []
t = []
for i in range(0, 150):
m = weights.loc[weights['ids'].isin(ms[i]),"weights"]
w.append(m)
s = sum(w[i])
t.append(s)
return(ms[t.index(max(t))])
maxset(g,weights)
(가중치 = 1 열의 정점 ID 및 컬럼 2 = 무게 두 열의 데이터 프레임 임). 정점 가중치를 고려하여 최대 독립 세트를 얻습니다.
vs
클래스를 사용하여 정점과 그 속성을 igraph
에 정의하려고합니다.
문서에서 가져온 정점에 무게를 설정하는 예를 들어 : 정점의 순서가, g.vs를 통해 그래프 개체의 여기 g 인스턴스라는 것을
http://igraph.org/python/doc/igraph.VertexSeq-class.html
g=Graph.Full(3) # generate a full graph as example
for idx, v in enumerate(g.vs):
v["weight"] = idx*(idx+1) # set the 'weight' of vertex to integer, in function of a progressive index
>>> g.vs["weight"]
[0, 2, 6]
답변 해 주셔서 감사합니다. 어떤 패키지가 파이썬이나 R 또는 다른 소프트웨어와 상관없이 더 많은 기능을 포함 할 수 있습니까? 너는 어떤 권고가 있니? –
@EdenHarder 모든 것을 다루는 패키지는 실제로 하나도 없습니다. 주로 소셜 네트워크 분석을하기 때문에 주로 R의 패키지 인 statnet/sna/network/ergm 패키지를 사용합니다. R, C 및 파이썬에서 igraph는 좀 더 그래프 이론에 기반합니다. 파이썬의 Networkx는 복잡한 네트워크 분석을 목표로합니다. 실제로, 그것은 당신이 성취하고자하는 것에 달려 있습니다. 나는 igraph와 statnet의 콤보를 찾는다. – paqmo
생태학 자와 생물 학자를 대상으로 한 네트워크 분석에 초점을 맞춘 asnipe와 enaR과 같은보다 구체적인 네트워크를 다루는 많은 작은 패키지가 R에 많이 있습니다. – paqmo