INNER CODE UNIT · Python
af
aquaskyline/Clairvoyante · clairvoyante/callVar.py:98
af = XBatch[j,param.flankingBaseNum,base2num[altBase],3] / dp
elif varType == 2: # INS
# infer the insertion length
if varLength == 0: varLength = 1
af = sum(XBatch[j,param.flankingBaseNum+1,:,1]) / dp
if varLength != maxVarLength:
for k in range(param.flankingBaseNum+1, param.flankingBaseNum+varLength+1):
altBase += num2base[np.argmax(XBatch[j,k,:,1])]
else:
for k in range(param.flankingBaseNum+1, 2*param.flankingBaseNum+1):
referenceTensor = XBatch[j,k,:,0]; insertionTensor = XBatch[j,k,:,1]
if k < (param.flankingBaseNum + maxVarLength) or sum(insertionTensor) >= (inferIndelLengthMinimumAF * sum(referenceTensor)):
inferredIndelLength += 1
altBase += num2base[np.argmax(insertionTensor)]
else:
break
coordination = int(coordination)
refBase = refSeq[param.flankingBaseNum]