def combine_expression_columns(df, columns_to_combine, remove_combined=True):
    """
    Combine expression columns, calculating the mean for 2 columns


    :param df: Pandas dataframe
    :param columns_to_combine: A list of tuples containing the column names to combine
    :return:
    """
    df = df.copy()
    for ca, cb in columns_to_combine:
        df['%s_(x+y)/2_%s' % (ca, cb)] = (df[ca] + df[cb]) / 2
    if remove_combined:
        for ca, cb in columns_to_combine:
            df.drop([ca, cb], inplace=True, axis=1)
    return df
