def fn_df_unique_3cols(df, columns):
    """Returns a unique list in the last column of the dataframe based on the first 2 columns.
    Inputs:
    df: Dataframe of interest
    columns: List of 3 column names. First 2 for grouping and last the column for unique values
    Notes: 3 columns must be based in. The unique values are seperated by '/' """
    # Rename to unique column so not to confuse with orginal name
    rename_unique_col = columns[2]+''
    df_unique = df[[columns[0], columns[1], columns[2]]]\
                                            .drop_duplicates()\
                                            .groupby([columns[0],columns[1]])[columns[2]]\
                                            .apply(list)\
                                            .reset_index()\
                                            .rename(columns={columns[2]: rename_unique_col})

    df_unique[rename_unique_col] = df_unique.apply(lambda x:(' / '.join([str(s) for s in x[rename_unique_col]])),
                                                   axis=1)
    return df_unique