def main(argv): parser = make_parser() args = parser.parse_args(argv) log_level = getattr(logging, args.loglevel) kwargs = {'format' : LOG_FORMAT, 'datefmt' : LOG_DATEFMT, 'level' : log_level} if args.logfile: kwargs['filename'] = args.logfile logging.basicConfig(**kwargs) logger = logging.getLogger() kb = KB(driver='omero')(args.host, args.user, args.passwd) logger.info('Loading GenotypeDataSample objects') dsamples = kb.get_objects(kb.GenotypeDataSample) logger.info('Loaded %d objects' % len(dsamples)) logger.info('Loading SNPMarkersSet') query = 'SELECT snpm FROM SNPMarkersSet snpm WHERE snpm.label = :mset_label' mset = kb.find_all_by_query(query, {'mset_label' : args.marker_set})[0] if not mset: logger.error('Unable to load SNPMarkersSet with label %s' % args.marker_set) sys.exit(2) else: logger.info('Object loaded') gdo_iterator = kb.get_gdo_iterator(mset, dsamples[:args.fetch_size]) gdos = [] logger.info('Loading GDOs') for gdo in gdo_iterator: logger.info(gdo['vid']) gdos.append(gdo) logger.debug('%d/%d GDOs loaded' % (len(gdos), args.fetch_size)) logger.info('Loaded %d GDOs' % len(gdos))
def main(argv): parser = make_parser() args = parser.parse_args(argv) log_level = getattr(logging, args.loglevel) kwargs = {'format': LOG_FORMAT, 'datefmt': LOG_DATEFMT, 'level': log_level} if args.logfile: kwargs['filename'] = args.logfile logging.basicConfig(**kwargs) logger = logging.getLogger() kb = KB(driver='omero')(args.host, args.user, args.passwd) logger.info('Loading GenotypeDataSample objects') dsamples = kb.get_objects(kb.GenotypeDataSample) logger.info('Loaded %d objects' % len(dsamples)) logger.info('Loading SNPMarkersSet') query = 'SELECT snpm FROM SNPMarkersSet snpm WHERE snpm.label = :mset_label' mset = kb.find_all_by_query(query, {'mset_label': args.marker_set})[0] if not mset: logger.error('Unable to load SNPMarkersSet with label %s' % args.marker_set) sys.exit(2) else: logger.info('Object loaded') gdo_iterator = kb.get_gdo_iterator(mset, dsamples[:args.fetch_size]) gdos = [] logger.info('Loading GDOs') for gdo in gdo_iterator: logger.info(gdo['vid']) gdos.append(gdo) logger.debug('%d/%d GDOs loaded' % (len(gdos), args.fetch_size)) logger.info('Loaded %d GDOs' % len(gdos))
user = args.user or vlu.ome_user() passwd = args.passwd or vlu.ome_passwd() except ValueError, ve: logger.critical(ve) sys.exit(ve) kb = KB(driver="omero")(host, user, passwd) logger.info("getting data samples") ms = kb.get_snp_markers_set(label=args.marker_set) if ms is None: msg = "marker set %s not present in kb, bailing out" % args.marker_set logger.critical(msg) sys.exit(msg) query = "from GenotypeDataSample g where g.snpMarkersSet.id = :id" params = {"id": ms.omero_id} gds = kb.find_all_by_query(query, params) logger.info("found %d data samples for marker set %s" % (len(gds), args.marker_set)) logger.info("updating dep tree") kb.update_dependency_tree() individuals = [get_individual(kb, ds) for ds in gds] ds_by_ind_id = dict((i.id, ds) for i, ds in zip(individuals, gds)) logger.info("getting families") families = get_all_families(kb) ped_writer = PedWriter(ms, base_path=args.prefix) logger.info("writing map file") ped_writer.write_map() logger.info("writing ped file") for i, fam in enumerate(families): if set(ds_by_ind_id.get(i.id) for i in fam) != set([None]): fam_label = "FAM_%d" % (i+1)