probes = ['base', 'mid', 'peak']
df['rolled'] = zip(df['targ_alt'], zip(*[df[p] for p in probes]))
df['interped_temp'] = df['rolled'].map(lambda x: np.interp(x[0], tuple(
    probe_alts[p] for p in probes), x[1]))
del df['rolled']
Панды: создайте новый столбец путем линейной интерполяции между существующими столбцами