Wie konvertieren Sie die Blockmitgliedschaften für jeden Knoten in einem Überlappungsblock-Status in ein numpy Array?Diagramm-Werkzeug Überlappungsblock Objekt
Insbesondere dann, wenn eine überlappende Blockobjekt Folgern, es sieht aus wie die überlappende Mitgliedschaft Array mit wiederhergestellt werden können
blockobject = gt.minimize_blockmodel_dl(g, overlap = True)
blockpropertyvector = blockobject.get_overlap_blocks()[0]
Um dies in eine numpy Array zu umwandeln, es scheint, dass wir eine Vorstellung von der maximal haben brauchen Anzahl der Mitgliedschaften für einen bestimmten Knoten (nennen wir es max_overlaps) und dann können wir zu einem 2D-Array
blockpropertyvector.get_2d_array(range(max_overlaps))
Aber jetzt bin ich nicht sicher, umwandeln, wie das Ergebnis zu interpretieren. Stimmt es, dass die erste Zeile dieser Matrix die erste Zugehörigkeitszuordnung für jeden Knoten ist? Wenn ja, dann möchte ich sagen, dass die zweite Zeile die zweite Mitgliedschaftszuweisung für einen Knoten ist, wenn sie existiert, und andernfalls. Aber 0 ist eine mögliche Blocknummer, woher wissen wir, ob der 0-te Block eine überlappende Mitgliedschaft enthält?
Ich denke, die richtige Wahl in der letzten Zeichenfolge wäre dies: ': len (bv [v] .a)' anstelle von ': len (b [v])' weil der letzte jedes Mal zurückkehrt 'max_B' Wert – lucidyan