#!/usr/bin/env python3 from __future__ import annotations import importlib.util from pathlib import Path HERE = Path(__file__).resolve().parent def load_module(): spec = importlib.util.spec_from_file_location( "intervention_response_p1", HERE / "analyze_p1.py" ) module = importlib.util.module_from_spec(spec) assert spec.loader is not None spec.loader.exec_module(module) return module def main() -> None: module = load_module() values = [-2.0, -1.0, 1.0, 2.0] labels = [0, 0, 1, 1] threshold, direction, balanced = module._fit_threshold(values, labels) assert direction == 1 assert -1.0 < threshold < 1.0 assert balanced == 1.0 assert module._balanced_accuracy(labels, labels) == 1.0 assert module._balanced_accuracy(labels, [1, 1, 0, 0]) == 0.0 print("intervention response P1 confirmation analysis: PASS") if __name__ == "__main__": main()