def log2_fold_change(df, samp_grps):
    """
    calculate fold change - fixed as samp_grps.mean_names[0] over samp_grps.mean_names[1],
    where the mean names are sorted alphabetically. The log has already been taken,
    so the L2FC is calculated as mean0 - mean1

    :param df: expanded and/or filtered dataframe
    :param samp_grps: SampleGroups() object
    :return: dataframe with fold change column appended, with name as in samp_grps.fc_name
    """
    mean1 = samp_grps.mean_names[0]
    mean2 = samp_grps.mean_names[1]
    df[samp_grps.fc_name] = df[mean1] - df[mean2]
    return df