def distanceProfile(firstrec, secrec, cdr3="CDR3"): return profile_distance_allprop(firstrec[cdr3], secrec[cdr3])
TRBdf = TRBdf.set_index('CDR3') for (seq1, seq2) in nodePairs: if computOpt == 'pairwiseAlign': score = pairwise2.align.localds(seq1, seq2, matrix, gop, gep, score_only=True) elif computOpt == 'distancePT': score = -weighted_cdr3_distance(seq1, seq2, default_distance_params) elif computOpt == 'distanceProfile': score = -profile_distance_allprop(seq1, seq2) # elif computOpt == 'compareLength': # score = -abs(len(seq1) - len(seq2)) elif computOpt == 'distanceTrimer': score = -compareTrimer(seq1, seq2) elif computOpt == 'distanceDimer': score = -compareDimer(seq1, seq2) # elif computOpt == 'distanceVJ': # v1, j1 = TRBdf.loc[seq1, ['V', 'J']] # v2, j2 = TRBdf.loc[seq2, ['V', 'J']] # score = vdist(v1, v2) + jdist(j1, j2) elif computOpt == 'distanceLvsh': score = -levenshteinDistance(seq1, seq2) elif computOpt == 'distanceKernel': score = KD_scores.loc[(seq1, seq2), 'score'][0] scorelist.append(score)