コード例 #1
0
ファイル: hybes.py プロジェクト: kaelfischer/lib_prrsv
 def cluster(self):
     """The corresponding MultiDictCluster 
     """
     rv=MultiDictCluster()
     rv.gNames=copy(self.oligoLongName)
     for i in xrange(len(self.uidList)):
         if not N.equal(self.array.mask,False)[i,:].any():
             continue
         rv[self.uidList[i]]={}
         row=self.array[i,:]
         for j in xrange(len(self.arrayList)):
             if row.mask[j]:
                 continue
             rv[self.uidList[i]][self.arrayList[j]]=row[j]
     return rv
コード例 #2
0
ファイル: pivotCluster.py プロジェクト: kaelfischer/lib_prrsv
#!/usr/local/bin/python

import sys

from utils import MultiDictCluster

iFile=sys.stdin
oFile=sys.stdout
mdc=MultiDictCluster()
iCol = iFile.next().strip().split('\t')[3:]
for g in iCol:
    mdc[g]={}
iFile.next()
for r in iFile:
    rF=r.strip().split()
    a=rF[0]
    vals=rF[3:]
    for g,v in zip(iCol,rF):
        mdc[g][a]=v
        
mdc.clusterFmt(oFile)
コード例 #3
0
ファイル: makeCluster.py プロジェクト: kaelfischer/lib_prrsv
    v=[]
    if type(recs) != ListType:
        rec=[res]
    for rec in recs:
        if rec.Flags>=0: # and re.match(r'\d+',rec.ID):
            v.append(rec['F532 Median - B532'])
            rv+=rec['F532 Median - B532']
    if len(v)>0:
        rv/=float(len(recs))
        print >> varianceFile, '\t'.join([str(x) for x in [rec.Name]+v])
        return rv
    else:
        return None
    


mdc=MultiDictCluster()

for fn in glob('Prrsv_*idHack.gpr'):
    gpr=ATF.GPR(fn)
    eName=fn.split('.')[0]
    eName=chipMap[gprFN2chipNumber(eName)]
    expt={}
    for i in set((r.ID for r in gpr.dataLines)):
        expt[i]=mean532(gpr[i])
    mdc.eAppend(expt,eName,sumNorm=False)
    mdc.gNames.update(dict((r.ID,r.Name) for r in gpr.dataLines))

varianceFile.close()
mdc.clusterFmt()