2777956c1202283ecc5bf8b773b9ab82bab5d849 max Thu Feb 23 12:01:05 2023 +0100 adding genark support to chromToUcsc, refs #30454 diff --git src/utils/chromToUcsc/chromToUcsc src/utils/chromToUcsc/chromToUcsc index 090c802..65c93dc 100755 --- src/utils/chromToUcsc/chromToUcsc +++ src/utils/chromToUcsc/chromToUcsc @@ -187,31 +187,42 @@ handledUnmappedChrom(chrom, skipUnknown, skipWarned, "line %d: chrom name %s is not in chromAlias table" % (lineNo, repr(chrom))) continue if isSam: mateChrom = row[6] if mateChrom not in ("=", "*"): row[6] = toUcsc[mateChrom] row[fieldIdx] = ucscChrom line = sep.join(row) ofh.write(line) ofh.write("\n") def download(db): + " download chromAlias file from UCSC " + # Genark assemblies are in a different directory of the download server + if "_" in db: + p1 = db[0:3] + p2 = db[4:7] + p3 = db[7:10] + p4 = db[10:13] + url = "https://hgdownload.soe.ucsc.edu/hubs/%s/%s/%s/%s/%s/%s.chromAlias.txt" % (p1, p2, p3, p4, db, db) + asd + else: url = "http://hgdownload.soe.ucsc.edu/goldenPath/%s/database/chromAlias.txt.gz" % db + gzData = urlopen(url).read() if 'cStringIO' in modules: data = StringIO(gzData) else: data = BytesIO(gzData) data = gzip.GzipFile(fileobj=data).read().decode() outFname = db+".chromAlias.tsv" open(outFname, "w").write(data) print("Wrote %s to %s" % (url, outFname)) print("You can now convert a file with 'chromToUcsc -a %s -i infile.bed -o outfile.bed'" % outFname) exit(0) def main():