if __name__ == '__main__': parser = argparse.ArgumentParser( description='Generate D3M dataset config files') parser.add_argument('-a', '--absolute', action='store_true') parser.add_argument('-b', '--base-dir', default='data', nargs='?') parser.add_argument('-d', '--datasets', default='datasets', nargs='?') parser.add_argument('-o', '--output', default='output', nargs='?') parser.add_argument('-c', '--config-dir', required=True) parser.add_argument('-p', '--problem', default='', nargs='?') parser.add_argument('dataset', nargs='+') args = parser.parse_args() if args.absolute: base_dir = make_abs(args.base_dir, os.getcwd()) datasets = make_abs(args.datasets, base_dir) output = make_abs(args.output, base_dir) else: base_dir = args.base_dir datasets = os.path.join(base_dir, args.datasets) output = os.path.join(base_dir, args.output) for dataset in args.dataset: for phase, phase_filename in PHASES.items(): config = build_config(dataset, datasets, phase, args.problem, output) filename = '{}_{}.json'.format(dataset, phase_filename) with open(os.path.join(args.config_dir, filename), 'w') as f: json.dump(config, f, indent=4)
return pd.DataFrame(data)[STATS_COLUMNS] if __name__ == '__main__': parser = argparse.ArgumentParser(description='Get Dataset summary') parser.add_argument('-i', '--input', default='data/datasets', nargs='?') parser.add_argument('-o', '--output', nargs='?') parser.add_argument('datasets', nargs='*') args = parser.parse_args() logging_setup() args.input = make_abs(args.input, os.getcwd()) if not args.datasets: args.datasets = os.listdir(args.input) print("Processing Datasets: {}".format(args.datasets)) output = get_stats(args.datasets, args.input) if args.output: print("Storing report as {}".format(args.output)) output.to_csv(args.output, index=False) else: print(output)
def _path_type(string): try: return make_abs(string) except ValueError: error = "Not a valid path: '{0}'.".format(string) raise argparse.ArgumentTypeError(error)