fullseye

graph_edge_consensus — GRAPH population op

使い方

How many individuals share each connection — K wiring matrices on one node order.

adjs is either a list of K square matrices or a table {name: matrix} (its insertion order is the individual order), all on the same node order (align the cell names first; a node absent from an individual is a zero row and column). Weights (synapse counts) are kept for the synapse shares; presence is > 0. Self-loops are dropped.

Returns a dict with:

Identities (the tests are built on these, not on fitted numbers): sum_c c * h[c] == sum_i |E_i|; sum_c h[c] == union; K identical inputs give h[K] == union and every Jaccard == 1; the Jaccard matrix is symmetric with a unit diagonal; stable + added + lost + flicker == union; synapse_share sums to 1.

Raises ValueError: adjs not a list / table; fewer than 2 individuals; matrices of different sizes; any refusal of :func:graph_degree_summary (non-square, negative, non-finite, string / bool / complex / masked input); an individual with no edges; n_null equal to 1 (no spread) or negative; swaps_per_edge < 1.

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(table を入力に取れる)

graph_core_persistence · tree_morphometry · tree_sholl · tree_run_length

同カテゴリ(population)

graph_strength_growth · graph_core_persistence


Provenance: graphinv.py — GRAPH operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.