Mercurial > repos > iuc > circos
diff text-from-bed.py @ 2:014a21767ac4 draft
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
author | iuc |
---|---|
date | Tue, 17 Sep 2019 16:54:57 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/text-from-bed.py Tue Sep 17 16:54:57 2019 -0400 @@ -0,0 +1,32 @@ +#!/usr/bin/env python +import logging +import sys + +logging.basicConfig(level=logging.INFO) +log = logging.getLogger() + + +if __name__ == "__main__": + with open(sys.argv[1], "r") as handle: + for line in handle: + lineData = line.strip().split() + # BED3+ chrom chromStart chromEnd + # BED6+ name score strand + # BED9+ thickStart thickEnd itemRgb + kv = {} + if len(lineData) >= 6: + kv["strand"] = lineData[5].replace("+", "1").replace("-", "-1") + kv["value"] = lineData[4] + else: + sys.exit("Must be BED6+") + + line = [ + lineData[0], # chrom + lineData[1], # chromStart + lineData[2], # chromEnd + lineData[3], + ",".join(["%s=%s" % x for x in sorted(kv.items())]), + ] + + sys.stdout.write("\t".join(line)) + sys.stdout.write("\n")