diff options
Diffstat (limited to 'extract_pei.py')
-rwxr-xr-x | extract_pei.py | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/extract_pei.py b/extract_pei.py new file mode 100755 index 0000000..5efcc0b --- /dev/null +++ b/extract_pei.py @@ -0,0 +1,53 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# +# Extract the power excess index (PEI) results. +# +# Aaron LI +# Created: 2016-04-29 +# + +import sys +import os +import json +import csv +import argparse +from collections import OrderedDict + + +def extract_pei(data): + """ + Extract the power excess index (PEI) results from the "data" dictionary. + """ + results = OrderedDict([ + ("name", data["name"]), + ("obsid", data["obsid"]), + ("r500_kpc", data["r500_kpc"]), + ("r500_pix", data["r500_pix"]), + ("kpc_per_pix", data["kpc_per_pix"]), + ("area_total", data["area_total"]), + ("area_below", data["area_below"]), + ("pei", data["pei"]), + ("pei_err", data["pei_err"]), + ]) + return results + + +def main(): + parser = argparse.ArgumentParser( + description="Extract power excess index (PEI) results") + parser.add_argument("pei_json", help="json file conatins PEI results") + args = parser.parse_args() + + pei_data = json.load(open(args.pei_json)) + results = extract_pei(pei_data) + + # output results + csv_writer = csv.writer(sys.stdout) + csv_writer.writerow(results.keys()) + csv_writer.writerow(results.values()) + + +if __name__ == "__main__": + main() + |