def makeVDJBedDict(bed,idNameDict):
fDict = {'Alpha':{'C':[],'V':[],'J':[]}, 'Beta':{'C':[],'V':[],'J':[]}}
f = open(bed, 'r')
l = f.readline()
while l != '':
lArr = l.strip('\n').split('\t')
gID = lArr[3]
gName = idNameDict[gID]
chain = ''
if (gName.startswith('TRA')):
chain = 'Alpha'
elif (gName.startswith('TRB')):
chain = 'Beta'
else:
sys.stderr.write(str(datetime.datetime.now()) + ' Error! %s name is not alpha or beta chain, ignoring it\n' % gName)
sys.stderr.flush()
if gName.find('C') != -1:
fDict[chain]['C'].append(l)
elif gName.find('V') != -1:
fDict[chain]['V'].append(l)
elif gName.find('J') != -1:
fDict[chain]['J'].append(l)
l = f.readline()
f.close()
return fDict
# Creates a dictionary of ENSEMBL ID -> fasta sequence
评论列表
文章目录