1import argparse 2import sys 3import textwrap 4 5import pandas as pd 6 7 8def check_csv(filename): 9 """ 10 Basic accuracy checking. 11 """ 12 13 df = pd.read_csv(filename) 14 15 failed = [] 16 for _, row in df.iterrows(): 17 model_name = row["name"] 18 status = row["accuracy"] 19 if "pass" not in status: 20 failed.append(model_name) 21 22 print(f"{model_name:34} {status}") 23 24 if failed: 25 print( 26 textwrap.dedent( 27 f""" 28 Error {len(failed)} models failed 29 {' '.join(failed)} 30 """ 31 ) 32 ) 33 sys.exit(1) 34 35 36if __name__ == "__main__": 37 parser = argparse.ArgumentParser() 38 parser.add_argument("--file", "-f", type=str, help="csv file name") 39 args = parser.parse_args() 40 check_csv(args.file) 41