"""Reads simulated counts; never treats an empty denominator as a zero rate."""
import csv
from pathlib import Path
rows=list(csv.DictReader(Path(__file__).with_name('quality-metrics.csv').open(encoding='utf-8-sig')))
inspected=rejected=0
for row in rows:
    n,d=int(row['inspected']),int(row['rejected'])
    if n<0 or d<0 or d>n: raise ValueError('Invalid sample counts')
    inspected+=n
    rejected+=d
if inspected==0: print('No valid samples')
else: print(f'inspected={inspected} rejected={rejected} rate={rejected/inspected:.2%}')
