qbiocode.apps.quvine.data.sparsify module#

Summary#

Functions:

edge_triangle_support_scores

Score edges by triangle support (# common neighbors).

materialize_undirected_simple_graph

Return a fully materialized undirected simple nx.Graph (no views, no DiGraph internals).

sparsify_edges_biological

Edge-only sparsification: degree-capped selection prioritizing biologically coherent edges.

Reference#

materialize_undirected_simple_graph(G)[source]#

Return a fully materialized undirected simple nx.Graph (no views, no DiGraph internals). This avoids the weird KeyErrors you were seeing with adjacency traversal. Preserves graph-level metadata and node attributes.

Return type:

Graph

edge_triangle_support_scores(G, candidate_edges)[source]#

Score edges by triangle support (# common neighbors). Uses adjacency dict access only.

Return type:

List[Tuple[Tuple, int]]

sparsify_edges_biological(G, retain_ratio, max_degree, rng, scoring='common_neighbors')[source]#

Edge-only sparsification: degree-capped selection prioritizing biologically coherent edges. No BFS, no connectivity checks, no nx.is_connected/connected_components.

Return type:

Graph