df['result'] = df.apply(lambda S: df.loc[(df.variableA == S.variableA) | (
    df.variableB == S.variableA), 'values'].sum(), axis=1)
Python Pandas: найти сумму столбца на основе значения двух других столбцов