def getSharedPRMs(prmLadder1, prmLadder2, epsilon=0.5): hashTable = {} for i in range(prmLadder1.size): key = np.round(prmLadder1[i] / epsilon) hashTable[key] = [(i, prmLadder1[i])] temp = np.zeros((prmLadder2.size, 2)) temp[:, 0] = prmLadder2 pairedIonData = SA.getPairedIons(hashTable, temp, delta=0.0, epsilon=epsilon) sharedPRMs = [] for key in sorted(pairedIonData.keys()): sharedPRMs += [zip(*pairedIonData[key])[1]] if sharedPRMs: return zip(*sharedPRMs)[0] else: return []