#!/usr/bin/env python """Step 05 — descriptive figures (fig01, fig03, fig04) and tables (tab01-tab03).""" import json from ucml import descriptives s = descriptives.run() c, d = s["coverage"], s["dynamics"] print(json.dumps({ "S0": s["S0_n"], "S1": s["S1_n"], "S2": s["S2_n"], "S2L": s["S2L_n"], "active_canonical_auto": s["active_canonical_auto_at_snapshot"], "active_s2l_range_full_days": [c["active_s2l_min"], c["active_s2l_max"]], "entries_per_day_mean": round(c["entries_per_full_day_mean"], 1), "exits_per_day_mean": round(c["exits_per_full_day_mean_confirmable"], 1), "crawl_cycles_per_day_mean": round(c["crawl_cycles_per_full_day_mean"], 2), "max_gap_hours": round(c["max_gap_hours_same_source"], 1), "S2_completed_median_days": round(d["S2_completed_duration_median_days"], 1), "S2_share_with_cut": round(d["S2_share_with_cut"], 4), "S2_first_cut_median_pct": round(d["S2_first_cut_pct_median"], 2), "S2L_left_censored_share": round(d["S2L_left_censored_share"], 4), }, indent=2))