from pygly.GlycanImage import GlycanImage from pygly.GlyTouCan import GlyTouCan if len(sys.argv) <= 1: print >> sys.stderr, "glyimg.py [ image options ] <gtc-accession> [ <gtc-accession> ... ]" print >> sys.stderr, """ Image options: scale <float> [1.0] reducing_end (true|false) [true] orientation (RL|LR|TB|BT) [RL] notation (cfg|cfgbw|cfglink|uoxf|text|uoxfcol) [cfg] display (normal|normalinfo|compact) [normalinfo] """.strip() sys.exit(1) gtc = GlyTouCan(usecache=True) imageWriter = GlycanImage() lastopt = 0 for i in range(1, len(sys.argv), 2): if sys.argv[i].startswith('G'): break key = sys.argv[i] value = sys.argv[i + 1] imageWriter.set(key, value) lastopt = i + 1 for acc in sys.argv[(lastopt + 1):]: outfile = acc + ".png" g = gtc.getGlycan(acc) imageWriter.writeImage(g, outfile)
#!/bin/env python27 import sys import findpygly from pygly.GNOme import GNOme, SubsumptionGraph from pygly.GlyTouCan import GlyTouCan g = SubsumptionGraph() g.readfile(sys.argv[1]) sys.argv.pop(1) # g = GNOme() gtc = GlyTouCan(usecache=True) for acc in sys.argv[1:]: taccs = set(filter(g.istopology, g.descendants(acc))) # print " ".join(sorted(taccs)) toremove = set() for tacc in taccs: gly = gtc.getGlycan(tacc) if gly.undetermined(): toremove.add(tacc) for m in gly.all_nodes(): if m.stem() == None: toremove.add(tacc) break for tacc in toremove: taccs.remove(tacc) toremove = set() for tacc in taccs:
#!/bin/env python27 import sys, traceback from getwiki import GlycoMotifWiki, CCRCMotif w = GlycoMotifWiki() from pygly.GlyTouCan import GlyTouCan gtc = GlyTouCan() from gtccache import GlyTouCanCache gtccache = GlyTouCanCache() from dataset import XLSXFileTable rows = XLSXFileTable(sys.argv[1]) current = set() for r in rows: try: index = int(r['#']) except ValueError: traceback.print_exc() continue name = r['Trivial Name-Cummings'] if name:
from getwiki import GPTWiki, Glycan import findpygly from pygly.GlyTouCan import GlyTouCan import os, sys, urllib, string import Bio.SeqIO gtc = GlyTouCan(usecache=True) w = GPTWiki() try: os.mkdir('../glycoct') except OSError: pass for gc in sorted(w.iterglycans(), key=lambda gc: gc.get('accession')): acc = gc.get('accession') topos = map(str.strip, map(str, gc.get('topo'))) for tacc in topos: glycoct = gtc.getseq(tacc, 'glycoct') if not glycoct: gly = gtc.getGlycan(tacc) glycoct = gly.glycoct() f = open('../glycoct/' + acc + '.' + tacc + '.txt', 'w') f.write(glycoct) f.close() print >> sys.stderr, "Dump GlycoCT to %s.%s.txt" % (acc, tacc)
#!/bin/env python27 import os, sys import json import findpygly from pygly.GlycanFormatter import GlycoCTFormat, WURCS20Format from pygly.GlyTouCan import GlyTouCan g = GlyTouCan() wurcs_parser = WURCS20Format() glycoct_parser = GlycoCTFormat() wpath = "dumps/wurcs" gpath = "dumps/glycoct" wlist = os.listdir(wpath) glist = os.listdir(gpath) alllist = list(set(wlist+glist)) print "Total glycan number %s" % len(alllist) glycanobj = {} for filename in alllist: acc = filename.rstrip(".txt") try: gseq = open(os.path.join(gpath, filename)).read().strip() obj = glycoct_parser.toGlycan(gseq) except: try:
#!/bin/env python27 import sys, traceback from getwiki import GlycoMotifWiki, UniCarbMotif w = GlycoMotifWiki() from pygly.GlyTouCan import GlyTouCan gtc = GlyTouCan() from gtccache import GlyTouCanCache gtccache = GlyTouCanCache() from pygly.GlycanFormatter import GlycoCTFormat, IUPACParserExtended1 gparser = GlycoCTFormat() imparser = IUPACParserExtended1() from dataset import XLSXFileTable rows = XLSXFileTable(sys.argv[1]) possibleaglycon = ["Cer", "R", "Ser/Thr"] reaglycon = ["Ser/Thr", "Cer", "Other"] current = set() for r in rows: id = r["ID"] name = r["Name"] iupacseq = r["IUPAC"] accession = "%06d" % id if not iupacseq: continue
#!/usr/bin/env python27 import sys, os, os.path import findpygly from pygly.GlyTouCan import GlyTouCan from pygly.GlycanFormatter import GlycoCTFormat glycoct_format = GlycoCTFormat() gtc = GlyTouCan() for l in sys.stdin: acc = l.strip() g = gtc.getGlycan(acc) if g and g.fully_determined(): print acc, True if not os.path.exists('%s.txt' % (acc, )): seq = gtc.getseq(acc, 'glycoct') if not seq: try: seq = glycoct_format.toStr(g) except: pass if seq: wh = open('%s.txt' % (acc, ), 'w') wh.write(seq.strip() + '\n') wh.close() else: print acc, (False if g else None)
#!/bin/env python27 import sys, traceback, os, csv from getwiki import GlycoMotifWiki from getwiki import GlydinMotif, GlydinCummingsMotif, GlydinHayesMotif, GlydinCermavMotif, GlydinSugarbindMotif, GlydinBioligoMotif w = GlycoMotifWiki() from dataset import XLSXFileTable rows = XLSXFileTable(sys.argv[1]) from pygly.GlyTouCan import GlyTouCan gtc = GlyTouCan() from gtccache import GlyTouCanCache gtccache = GlyTouCanCache() """ [x]collection structure key: id (not row number) value: {"aglycon":"String"/None, "name":""/None, "gtcid":""} """ ccollection = {} hcollection = {} vcollection = {} sbcollection = {} bcollection = {} collections = { "c": ccollection, "h": hcollection,