def main(): """Main function """ # Get args parser = build_parser() try: args = parser.parse_args() except: parser.print_help() sys.exit(0) if args.input_glob: gct_files = glob.glob(args.input_glob) elif args.input_list: gct_files = grp.read(args.input_list) else: raise Exception('input_glob or input_list must be specified') gct_list = load_data(gct_files) setup_logger.setup(verbose=args.verbose) adj_ds, adj_list = combat_by_group(gct_list, col_group=args.col_group, batch_field=args.batch_field, use_col_group_as_batch=args.use_col_group_as_batch) save_data(adj_ds, adj_list)
made_gallery = galleries.mk_index(table_headers=headers, table_tuples=table_info, outfolder=out_dir, project_name=proj_name) if made_gallery: logger.info("successfully made QC gallery") index_info.to_csv(os.path.join(out_dir, 'qc_report.txt'), sep='\t') def main(args, project_name): # Read in the data if args.custom_path is not None: out_dir = args.custom_path else: out_dir = os.path.join(base_path, project_name, 'qc/merino') qc_galleries(out_dir, project_name) if __name__ == "__main__": args = build_parser().parse_args(sys.argv[1:]) setup_logger.setup(verbose=args.verbose) logger.debug("args: {}".format(args)) main(args, project_name=args.project_name)
assert expected_col_id in r.index, (expected_col_id, r.index) expected_col_id = index_builder(pert_list[2]) assert expected_col_id in r.index, (expected_col_id, r.index) assert "trt_cp" == r["pert_type"][expected_col_id], r["pert_type"][expected_col_id] assert 2 == r["random_inclusion"][expected_col_id], r["random_inclusion"][expected_col_id] assert r["other"][expected_col_id] is None, r["other"][expected_col_id] assert 2.2 == r["something"][expected_col_id], r["something"][expected_col_id] assert 3 == r["pert_well"][expected_col_id], r["pert_well"][expected_col_id] def test_convert_objects_to_metadata_df_for_prism_cell(self): cell_list = [pm.PrismCell(1, 2, 3, 5), pm.PrismCell(7, 11, 13, 17)] def index_builder(c): return c.id r = pm.convert_objects_to_metadata_df(index_builder, cell_list) assert r is not None logger.debug("r: {}".format(r)) assert "pool_id" in r.columns assert "davepool_id" in r.columns assert "analyte_id" in r.columns if __name__ == "__main__": setup_logger.setup(verbose=True) unittest.main()