population op• 데이터 종류: table → table
• 호출: import fullseye as fs; fs.ledger.graph_edge_consensus(adjs, ordered=False, n_null=0, swaps_per_edge=5, seed=0)(구현을 직접 호출하려면 import graphinv; graphinv.graph_edge_consensus(adjs, ordered=False, n_null=0, swaps_per_edge=5, seed=0), 원장에서 가져오려면 opsgraph.get("graph_edge_consensus"))
> 이 연산자의 설명은 아직 번역이 없습니다. 원문을 그대로 싣습니다.
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:
• `k (K), n, names, edges_per_individual and union` (edges
seen in at least one individual)
• `occupancy_hist — h[c] = number of edges present in exactly c`
individuals, `c = 0..K (h[0]` is always 0: only the union is counted)
• `jaccard — the K x K pairwise overlap |Ei ∩ Ej| / |Ei ∪ Ej|`
• `synapse_share — for each c`, the fraction of all synapses (summed over
individuals) on edges of occupancy `c` (with a 0/1 input: the edge share)
• with `ordered=True` (individuals listed in developmental order): the union is
split by its presence pattern along the order into `stable` (present in all),
`added (absent, then present to the end: 0..01..1), lost`
(`1..10..0) and flicker (anything else). The four sum to union`.
• with `n_null >= 2`: every individual is rewired independently by
degree-preserving swaps (each node's in/out degree kept exactly, checked per
sample, fail-closed) and the occupancy histogram is re-counted. Reports
`occupancy_null_mean / occupancy_null_sd per c` and
`shared_all_ratio` (edges present in all K, observed over the null mean; inf
when the null never shares one, so `shared_all_null_max` is reported too):
the chance level of "the same connection in every animal" given only each
animal's degrees.
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`.
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• poc_connectome_across_decades — py -3.11 examples/poc_connectome_across_decades.py
• poc_connectome_across_worms — py -3.11 examples/poc_connectome_across_worms.py
table 를 입력으로 받는 것)graph_core_persistence · tree_morphometry · tree_sholl · tree_run_length
population)graph_strength_growth · graph_core_persistence
*Provenance: graphinv.py — GRAPH 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.