Summarize results from run_grid_simulation(), filtering by parameter ranges
and computing aggregated performance metrics. Provides detailed summaries
at both the setting level and across all selected settings.
Usage
summarize_grid_results(
grid_results_list,
n_sequences_range = NULL,
seq_length_range = NULL,
min_na_range = NULL,
max_na_range = NULL,
level_context = 0.05,
print_output = TRUE,
print_aggregated_overall = TRUE,
print_aggregated_edges = TRUE,
print_settings_summary = TRUE,
num_rows_range = NULL,
max_seq_length_range = NULL
)
analyze_grid_results(...)Arguments
- grid_results_list
List output from
run_grid_simulation().- n_sequences_range
Numeric vector of length 2 (min, max) or NULL. Filter settings by n_sequences.
- seq_length_range
Numeric vector of length 2 (min, max) or NULL. Filter settings by seq_length.
- min_na_range
Numeric vector of length 2 (min, max) or NULL. Filter settings by min_na.
- max_na_range
Numeric vector of length 2 (min, max) or NULL. Filter settings by max_na.
- level_context
Numeric. Significance level used for calculations (for context in output). Default: 0.05.
- print_output
Logical. Master switch for console printing. Default: TRUE.
- print_aggregated_overall
Logical. Print averaged overall performance metrics across selected settings. Default: TRUE.
- print_aggregated_edges
Logical. Print aggregated edge significance summary. Default: TRUE.
- print_settings_summary
Logical. Print summary table for each selected setting. Default: TRUE.
- num_rows_range
Deprecated. Use
n_sequences_rangeinstead.- max_seq_length_range
Deprecated. Use
seq_length_rangeinstead.- ...
Arguments passed to
summarize_grid_results.
Value
A list containing:
- n_selected
Number of settings matching the filter criteria.
- aggregated_summary
List with:
overall_performance: Averaged metrics across settings.
edge_significance: Aggregated edge-level statistics.
- selected_settings_summary_df
Data frame with per-setting metrics calculated from total TP/TN/FP/FN counts.
- compiled_individual_runs
List with detailed run-level data:
all_raw_summaries: Combined bootstrap summaries.
all_per_edge_performance: Combined per-edge results.
run_level_performance_metrics: Metrics per run.
setting_level_summary_stats: Mean/Median/SD of run metrics.
Returns NULL (invisibly) if no settings match.
Details
The function performs comprehensive analysis:
Filtering: Selects settings where all parameters fall within specified ranges.
Aggregation from Input Summaries: Extracts and averages overall performance
and edge significance from the original aggregated_summary in each setting.
Run-Level Metrics: Recomputes TP/TN/FP/FN counts from per-edge data, then calculates Sensitivity, Specificity, FPR, FNR, Accuracy, and MCC per run.
Setting-Level Metrics: Two approaches:
Mean/Median/SD of run-level metrics.
Metrics computed from total counts across all runs (more robust).
The selected_settings_summary_df uses approach #2 for the most accurate
overall metrics per setting.
Examples
if (FALSE) { # \dontrun{
# After running grid simulation
grid_results <- run_grid_simulation(...)
# Analyze all results
analysis <- summarize_grid_results(grid_results)
# Filter to specific parameter ranges
analysis_filtered <- summarize_grid_results(
grid_results,
n_sequences_range = c(100, 200),
seq_length_range = c(30, 50),
max_na_range = c(0, 5)
)
# Access the detailed run-level metrics
run_metrics <- analysis$compiled_individual_runs$run_level_performance_metrics
# Access setting-level summary
setting_summary <- analysis$selected_settings_summary_df
# Old parameter names still work
analysis_filtered <- summarize_grid_results(
grid_results,
num_rows_range = c(100, 200),
max_seq_length_range = c(30, 50)
)
} # }