Пример #1
0
def attrs(objects, internals, mod,  *attr):
    for a in attr:
        print a
        g = getattr(A, a)
        if hasattr(g, 'data'):
            data = globals.json(getattr(g, 'data'), globals.datasource)
        for o in objects.keys():
            if not hasattr(g, 'data'):
                if hasattr(g, 'args'):
                    args = getattr(g,'args')
                    mod.__getattribute__(getattr(g, 'fun'))(objects[o], args)
                else:
                    mod.__getattribute__(getattr(g, 'fun'))(objects[o])
            else:
                if hasattr(g, 'args'):
                    args = getattr(g,'args')
                    mod.__getattribute__(getattr(g, 'fun'))(objects[o], data, args)
                else:
                    mod.__getattribute__(getattr(g, 'fun'))(objects[o], data)
            intermethods = [i for i in internals.__dict__.keys() if not i.startswith('_')]
            apply(internal, [objects[o], internals] + sorted(intermethods))
Пример #2
0
def init(objects, clas, mod, types):
    g = getattr(A, types)
    data = globals.json(getattr(g, 'data'), globals.datasource)
    for t in data:
        objects[t] = clas(t)
Пример #3
0
def initall(objects, orfs, parset):
    plist = globals.json(filehash[parset])
    for par in plist:
        objects[(par[0], par[1])] = paralogs((orfs[par[0]], orfs[par[1]]))
Пример #4
0
def init(objects, clas, types):
	data  = globals.json(filehash[types], globals.datasource)
	for t in data:
		objects[t] = clas(t)
Пример #5
0
import simplejson
import globals

filehash = globals.json('Paralogsfilehash', './dbase/')


class paralogs:
    def __init__(self, orfs):
        self.orfs = orfs

    def getalignindex(self):
        if hasattr(self, 'alignment') and getattr(
                self, 'alignment').keys().__len__() == 2:
            print 'alignindex:' + str(self.orfs[0].orfname) + str(
                self.orfs[1].orfname)
            alignindex = {}
            dashes = 0
            i = 0
            alignseq = getattr(self, 'alignment')
            alignindex[self.orfs[0].orfname] = {}
            while i < len(self.orfs[0].seq):
                if alignseq[self.orfs[0].orfname][i + dashes] == '-':
                    dashes = dashes + 1
                else:
                    alignindex[self.orfs[0].orfname][i] = dashes + i
                    i = i + 1
            alignindex[self.orfs[1].orfname] = {}
            i = 0
            dashes = 0
            while i < len(self.orfs[1].seq):
                if alignseq[self.orfs[1].orfname][i + dashes] == '-':
Пример #6
0
import ORFs
import globals


def init(objects, clas, types):
	data  = globals.json(filehash[types], globals.datasource)
	for t in data:
		objects[t] = clas(t)
		
def attrs(objects, *attr):
	for o in objects.keys():
		for a in attr:
			if 'args' in attrmethods[a].keys():
		       args = attrmethods[a]['args']
			   ORFs.__getattribute__(attrmethods[a]['fun'])(objects[o], args)
			apply(internal, [objects[o]] + intermethods.keys())

def internal(obj, *internalattr):
	for ia in internalattr:
			obj.__class__.__dict__[intermethods[ia]](obj)

filehash = globals.json('./dbase/filehash')	
attrmethods = globals.json('./dbase/attrmethods')   
intermethods = globals.json('./dbase/intermethods') 

if __name__ == '__main__':
	orfs ={}
	init(orfs, ORFs.Orf, 'geneset')
Пример #7
0
import simplejson
import Paralogs
import globals

"""
get wapinski paralogs, convert them to tupules, and add them as
attributes to the Paralog objects
"""
file = "paralogswapinskilistfigS6"
paraloglines = globals.json(file)

paraloglist = map(lambda x: x.strip("\n").split("\t"), paraloglines)
plist = [(x[0], x[1]) for x in paraloglist if x[0] in orfs.keys() and x[1] in orfs.keys()]


file = open("./data/DICparsalignment")
dicpars = simplejson.load(file)
file.close()


for p in Pars.keys():
    if hasattr(Pars[p], "alignindex"):
        setattr(Pars[p], "phosphosites", {})
        for o in Pars[p].orfs:
            if o in orfs.keys() and hasattr(orfs[o], "phosphosite"):
                f = filter(lambda x: x in Pars[p].alignindex[o].keys(), orfs[o].phosphosite)
                Pars[p].phosphosites[o] = map(lambda x: Pars[p].alignindex[o][x], f)

# add SYT positions
for p in Pars.keys():
    if hasattr(Pars[p], "alignindex"):
Пример #8
0
def initall(objects, orfs, parset):
    plist = globals.json(filehash[parset])
    for par in plist:
        objects[(par[0], par[1])] = paralogs((orfs[par[0]], orfs[par[1]]))
Пример #9
0
import simplejson
import globals

filehash = globals.json('Paralogsfilehash', './dbase/')

class paralogs:
    def __init__(self, orfs):
        self.orfs = orfs

    def getalignindex(self):
        if hasattr(self, 'alignment') and getattr(self, 'alignment').keys().__len__() == 2:
            print 'alignindex:' + str(self.orfs[0].orfname) + str(self.orfs[1].orfname) 
            alignindex = {}
            dashes = 0
            i = 0
            alignseq = getattr(self, 'alignment')
            alignindex[self.orfs[0].orfname] = {}
            while i < len(self.orfs[0].seq):
                if alignseq[self.orfs[0].orfname][i+dashes] == '-':
                    dashes = dashes + 1
                else:
                    alignindex[self.orfs[0].orfname][i] = dashes+i
                    i = i+1
            alignindex[self.orfs[1].orfname] = {}
            i = 0
            dashes = 0
            while i < len(self.orfs[1].seq):
                if alignseq[self.orfs[1].orfname][i+dashes] == '-':
                    dashes = dashes + 1
                else:
                    alignindex[self.orfs[1].orfname][i] = dashes+i
Пример #10
0
import simplejson
import Paralogs
import globals
'''
get wapinski paralogs, convert them to tupules, and add them as
attributes to the Paralog objects
''' 
file = 'paralogswapinskilistfigS6'    
paraloglines = globals.json(file)

paraloglist = map(lambda x: x.strip('\n').split('\t'), paraloglines)
plist = [(x[0], x[1]) for x in paraloglist if x[0] in orfs.keys() and x[1] in
orfs.keys()] 


file = open('./data/DICparsalignment')    
dicpars  = simplejson.load(file)
file.close()


for p in Pars.keys():
    if hasattr(Pars[p], 'alignindex'):
        setattr(Pars[p], 'phosphosites', {})
        for o in Pars[p].orfs:
            if o in orfs.keys() and hasattr(orfs[o], 'phosphosite'):
                f = (filter(lambda x: x in Pars[p].alignindex[o].keys(), 
                            orfs[o].phosphosite))
                Pars[p].phosphosites[o] = (map(lambda x: Pars[p].alignindex[o][x],
                            f))

# add SYT positions