def insertOrUpdate(self, session_id, uid): with getcursor(self.DBCONN, "insertOrUpdate") as curs: curs.execute(""" SELECT id FROM {table} WHERE session_id = %(session_id)s """.format(table=self.table), {"session_id": session_id}) if (curs.rowcount > 0): curs.execute(""" UPDATE {table} SET uid = %(uid)s WHERE session_id = %(session_id)s """.format(table=self.table), {"session_id": session_id, "uid": uid }) else: curs.execute(""" INSERT INTO {table} (session_id, uid) VALUES ( %(session_id)s, %(uid)s )""".format(table=self.table), {"session_id": session_id, "uid": uid })
def insertOrUpdate(self, url, exists): with getcursor(self.DBCONN, "insertOrUpdate") as curs: curs.execute( """ SELECT exists FROM urlExists WHERE url = %(url)s """, {"url": url}) if (curs.rowcount > 0): curs.execute( """ UPDATE urlExists SET exists = %(exists)s WHERE url = %(url)s RETURNING id; """, { "url": url, "exists": exists }) else: curs.execute( """ INSERT INTO urlExists (url, exists) VALUES ( %(url)s, %(exists)s )""", { "url": url, "exists": exists })
def run(args, DBCONN): assemblies = Config.assemblies for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "07_setup_cart") as curs: setupCart(curs, assembly)
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] def doRun(args, assembly, curs, tsuffix, jobgen, runDate): if args.metadata: PI.ImportPeakIntersectionMetadata(curs, assembly, tsuffix, jobgen, runDate).run() elif args.index: PI.ImportPeakIntersections(curs, assembly, tsuffix, runDate).index() else: m = PI.ImportPeakIntersectionMetadata(curs, assembly, tsuffix, jobgen, runDate) runDate = m.run() ipi = PI.ImportPeakIntersections(curs, assembly, tsuffix, runDate) ipi.run() ipi.index() runDate = Config.cistromePeakIntersectionRunDate for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "main") as curs: if assembly in ["hg38", "mm10"]: doRun(args, assembly, curs, "cistromeIntersections", cistrome_peak_metadata, runDate)
def run(args, DBCONN): printt('***********', "mm10") with getcursor(DBCONN, "import DEs") as curs: ide = ImportDE(curs) if args.index: return ide.index() ide.setupAll(args.sample) ide.index()
def find(self, url): with getcursor(self.DBCONN, "findBedOverlap") as curs: curs.execute(""" SELECT exists FROM urlExists WHERE url = %(url)s """, {"url": url}) return curs.rowcount > 0
def find(self, url): with getcursor(self.DBCONN, "findBedOverlap") as curs: curs.execute( """ SELECT exists FROM urlExists WHERE url = %(url)s """, {"url": url}) return curs.rowcount > 0
def setupDB(self): with getcursor(self.DBCONN, "setupDB") as curs: curs.execute(""" DROP TABLE IF EXISTS urlExists; CREATE TABLE urlExists (id serial PRIMARY KEY, url text, exists boolean ) """)
def setupDB(self): with getcursor(self.DBCONN, "get") as curs: curs.execute(""" DROP TABLE IF EXISTS {table}; CREATE TABLE {table} (id serial PRIMARY KEY, uid text, session_id text ) """.format(table=self.table))
def lookup(self, assembly, rs): with getcursor(self.DBCONN, "lookup") as curs: curs.execute( """ SELECT chrom, chromStart, chromEnd FROM {table} WHERE name = %(rs)s """.format(table=self.tableNames[assembly]), {"rs": rs}) if (curs.rowcount > 0): return curs.fetchall() return None
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "30_cytobands") as curs: c = Cytoband(curs, assembly) c.run()
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "38_beds") as curs: c = DCCCres(curs, assembly) c.run()
def fuzzy_lookup(self, assembly, gene): with getcursor(self.DBCONN, "lookup") as curs: curs.execute(""" SELECT gene FROM {table} WHERE gene ~ lower(%(gene)s) """.format(table=self.tableNames[assembly]), {"gene": gene}) if (curs.rowcount > 0): return [x[0] for x in curs.fetchall()] return None
def lookup(self, assembly, gene): with getcursor(self.DBCONN, "lookup") as curs: curs.execute(""" SELECT chrom, chromStart, chromEnd FROM {table} WHERE lower(gene) = lower(%(gene)s) """.format(table=self.tableNames[assembly]), {"gene": gene}) if (curs.rowcount > 0): return curs.fetchall() return None
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "3_cellTypeInfo") as curs: at = AddTSS(curs, assembly) at.run()
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "35_genes_Details") as curs: c = Genes(curs, assembly) c.run()
def run(args, DBCONN): if args.assembly: assemblies = [args.assembly] assemblies = ["hg19"] # Config.assemblies for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "31_links") as curs: c = Links(curs, assembly) c.run()
def run(args, DBCONN): if args.assembly: assemblies = [args.assembly] assemblies = ["hg19"] # Config.assemblies for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "29_tads") as curs: g = TADImporter(curs, assembly) g.run()
def get(self, url): with getcursor(self.DBCONN, "get") as curs: curs.execute(""" SELECT exists FROM urlExists WHERE url = %(url)s """, {"url": url}) if curs.rowcount > 0: return curs.fetchone()[0] return False
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "08_setup_log") as curs: pd = PolishData(curs, assembly) pd.run()
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "04_cellTypeInfo") as curs: g = GWASsnps(curs, assembly) g.run()
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "3_cellTypeInfo") as curs: aga = ImportGenes(curs, assembly) aga.run() makeMV(curs, assembly)
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: print('***********', assembly) pg = PostgresWrapper(DBCONN) with getcursor(DBCONN, "dropTables") as curs: icg = MoreTracks(curs, assembly, pg) icg.run()
def insert(self, session_id, uid): with getcursor(self.DBCONN, "get") as curs: curs.execute(""" INSERT INTO {table} (session_id, uid) VALUES ( %(session_id)s, %(uid)s )""".format(table=self.table), {"session_id": session_id, "uid": uid })
def get(self, url): with getcursor(self.DBCONN, "get") as curs: curs.execute( """ SELECT exists FROM urlExists WHERE url = %(url)s """, {"url": url}) if curs.rowcount > 0: return curs.fetchone()[0] return False
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: printt('***********', assembly) with getcursor(DBCONN, "main") as curs: ipi = ImportVISTA(curs, assembly) ipi.run() ipi.index()
def get(self, session_id): print(self.table) with getcursor(self.DBCONN, "get") as curs: curs.execute(""" SELECT uid FROM {table} WHERE session_id = %(session_id)s """.format(table=self.table), {"session_id": session_id}) uid = curs.fetchone() if uid: return uid[0] return None
def setupDB(self): with getcursor(self.DBCONN, "setupDB") as curs: curs.execute(""" DROP TABLE IF EXISTS {search}; CREATE TABLE {search} (id serial PRIMARY KEY, reAccession text, assembly text, uid text NOT NULL, hubNum integer NOT NULL, j jsonb ) """.format(search=self.tableSearch))
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: with getcursor(DBCONN, "08_setup_log") as curs: im = ImportRNAseq(curs, assembly) if args.index: im.doIndex() else: im.run()
def run(args, DBCONN): assemblies = Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: print('***********', assembly) with getcursor(DBCONN, "dropTables") as curs: icg = ImportCreGroups(curs, assembly) icg.run() icg.runCts() with db_connect_single(os.path.realpath(__file__)) as conn: vacumnAnalyze(conn, assembly + "_cre_all", [])
def setupDB(self): with getcursor(self.DBCONN, "setupDB") as curs: curs.execute(""" DROP TABLE IF EXISTS {search}; CREATE TABLE {search} (id serial PRIMARY KEY, assembly text, assays text, tissues text, loci text, uid text NOT NULL, assayType integer NOT NULL, hubNum integer NOT NULL ) """.format(search=self.tableSearch))
def run(args, DBCONN): assemblies = ["hg19"] # Config.assemblies if args.assembly: assemblies = [args.assembly] for assembly in assemblies: if "hg19" != assembly: print("skipping...") continue printt('***********', assembly) with getcursor(DBCONN, "main") as curs: ig = ImportGwas(curs, assembly) ig.run()
def main(): args = parse_args() if args.local: dbs = DBS.localAnnotations() else: dbs = DBS.pgdsn("Annotations") dbs["application_name"] = os.path.realpath(__file__) import psycopg2.pool DBCONN = psycopg2.pool.ThreadedConnectionPool(1, 32, **dbs) with getcursor(DBCONN, "main") as cur: setupAll(cur)
def findBedOverlap(self, assembly, chrom, start, end): if assembly not in ["hg19", "mm10"]: return [] with getcursor(self.DBCONN, "findBedOverlap") as curs: curs.execute(""" SELECT DISTINCT expID FROM bedRanges{assembly} WHERE chrom = %(chrom)s AND startend && int4range(%(start)s, %(end)s) """.format(assembly=assembly), {"chrom": chrom, "start": start, "end": end}) return [x[0] for x in curs.fetchall()]
def insertOrUpdate(self, url, exists): with getcursor(self.DBCONN, "insertOrUpdate") as curs: curs.execute(""" SELECT exists FROM urlExists WHERE url = %(url)s """, {"url": url}) if (curs.rowcount > 0): curs.execute(""" UPDATE urlExists SET exists = %(exists)s WHERE url = %(url)s RETURNING id; """, {"url": url, "exists": exists }) else: curs.execute(""" INSERT INTO urlExists (url, exists) VALUES ( %(url)s, %(exists)s )""", {"url": url, "exists": exists})