diff options
author | Birte Kristina Friesel <birte.friesel@uos.de> | 2024-02-26 11:17:18 +0100 |
---|---|---|
committer | Birte Kristina Friesel <birte.friesel@uos.de> | 2024-02-26 11:17:18 +0100 |
commit | d5b1a62a8d8423565e8a8a54ae09961e018a3eb2 (patch) | |
tree | 3d91bdd9ecf48f81195c1d6b7ecba5a424363b04 /lib/cli.py | |
parent | 1ce6856206097d7deb975567d17d853d5df91108 (diff) |
add --export-csv-unparam support
Diffstat (limited to 'lib/cli.py')
-rw-r--r-- | lib/cli.py | 24 |
1 files changed, 24 insertions, 0 deletions
@@ -370,6 +370,24 @@ def export_dot(model, dot_prefix): logger.info(f"Dot export of model saved to {filename}") +def export_csv_unparam(model, csv_prefix): + import csv + + for name in sorted(model.names): + filename = f"{csv_prefix}{name}.csv" + with open(filename, "w") as f: + writer = csv.writer(f) + writer.writerow( + ["measurement"] + model.parameters + sorted(model.attributes(name)) + ) + for i, param_tuple in enumerate(model.param_values(name)): + row = [i] + param_tuple + for attr in sorted(model.attributes(name)): + row.append(model.attr_by_name[name][attr].data[i]) + writer.writerow(row) + logger.info(f"CSV unparam data saved to {filename}") + + def export_pgf_unparam(model, pgf_prefix): for name in model.names: for attribute in model.attributes(name): @@ -467,6 +485,12 @@ def add_standard_arguments(parser): help="Export model and model quality to LaTeX dataref file", ) parser.add_argument( + "--export-csv-unparam", + metavar="PREFIX", + type=str, + help="Export raw (parameter-independent) observations in CSV format to {PREFIX}{name}-{attribute}.csv", + ) + parser.add_argument( "--export-pgf-unparam", metavar="PREFIX", type=str, |