Skip to contents

Subset psychHypergraph based on various criteria

Usage

subset_hypergraph(
  x,
  type = c("full", "redundant", "synergistic"),
  oinfo_threshold = NULL,
  oinfo_quantile = NULL,
  top_n = NULL,
  k = NULL,
  nodes = NULL,
  node_mode = c("any", "all"),
  significant_only = TRUE,
  hyperedge_ids = NULL
)

Arguments

x

psychHypergraph object

type

"full" (default), "redundant", or "synergistic"

oinfo_threshold

Minimum absolute O-info value to retain

oinfo_quantile

Quantile threshold for O-info (e.g., 0.9 to keep top 10%)

top_n

Keep only top N hyperedges by absolute O-info

k

Filter hyperedges by order (e.g., 3 or 4)

nodes

Filter hyperedges that include specific nodes (variable indices)

node_mode

"any" (default) to keep hyperedges that include any of the specified nodes, or "all" to keep only those that include all specified nodes

significant_only

Logical. If TRUE (default), only keep hyperedges that passed all significance tests

hyperedge_ids

Optional vector of hyperedge IDs from the current x$all_test_results$hyperedge_id to retain.

Value

A new psychHypergraph object containing only the subset of hyperedges that meet the specified criteria. Hyperedge lists, incidence matrices, details, and counts are updated together. all_test_results contains the retained records; original_test_results preserves the complete table from before the first subset operation.

Details

Filtering uses the current result table and does not repeat significance testing. With significant_only = FALSE, retained candidates keep their original significance indicators. Repeated calls further restrict the current subset. An empty subset retains all node columns in its incidence matrices.