Closed donEnno closed 3 years ago
Nach dem ich mir das ganze nochmal genauer angesehen habe: `G_P2_B45 = netx.from_numpy_array(patient2_B45_data) G_P2_B80 = netx.from_numpy_array(patient2_B80_data) G_P2_G92 = netx.from_numpy_array(patient2_G92_data)
degrees_B45 = G_P2_B45.degree()
degrees_B80 = G_P2_B80.degree()
degrees_G92 = G_P2_G92.degree()
print(dict((k, v) for k, v in degrees_B45 if v <= 0))
print(dict((k, v) for k, v in degrees_B80 if v <= 0))
print(dict((k, v) for k, v in degrees_G92 if v <= 0))
weights_B45 = G_P2_B45.degree(weight='weight')
weights_B80 = G_P2_B80.degree(weight='weight')
weights_G92 = G_P2_G92.degree(weight='weight')
print(dict((k, v) for k, v in weights_B45 if v <= 0))
print(dict((k, v) for k, v in weights_B80 if v <= 0))
print(dict((k, v) for k, v in weights_G92 if v <= 0))`
Hat sich herausgestellt, dass es an Seqenuz 242 lag die so aussieht und dementsprechend unbrauchbar ist.
>PATIENT_2_SEQUENCE_242 PSGLIF
Ich habe
community_louvain.best_partition(G)
für Patient 2 bekomme ichValueError: Bad node degree (-104.0)
. Wenn ich mir dir degrees anschaue sind nur positive Werte dabei. Bei den Gewichten allerdings gibt es genau einen negativen Wert.Intern werden die degrees mit den weights verrechnet. Inwiefern die Gewichtungen wichtig sind, ist mir nicht klar. Ich bin aber auch nicht so tief in der Theorie zu Louvain drin, sprich ich habe mir ein Videos zum Konzept angesehen.
Ich werde versuchen rauszufinden woher der negative Wert kommt bevor ich die große Distanzmatrix laufen lasse.
Man kann das umgehen, in dem man
community_louvain.best_partition(G, weight='None')
schreibt, dann sehen die communites aber nicht mehr gut aus.PS: Der Issue ist keine Anfrage an dich, mehr als Notiz für mich gedacht.