def change_cols(data, params):
    """
    Changes / filters columns according to the parameters passed.
    data: a dataframe with columns for a certain dtype
    params: a list of column names to values
        A False value means the column will be omitted
        A True value means the column will be included as-is
        A string value means the column will be re-named to that value
    """
    # Drop bad columns first
    good_cols = [col for col,val in params.items() if (val and col in data.columns)]
    new_data = data[good_cols].copy()
    
    # Re-map column names
    col_mapper = {col: new_col for col,new_col in params.items() if isinstance(new_col, str)}
    new_data.rename(columns=col_mapper, inplace=True)
    
    return new_data