def distinct(df, columns=None, keep='first', inplace=False):
    """Removes duplicate items from columns

    Args:
        df (`pandas.DataFrame`): The DataFrame to operate on
        columns (list, optional): Specific columns to operate on
        keep (str, optional): Which row containing duplicate values to keep.
            defaults to `'first'`
        inplace (bool, optional): Should duplicate values be removed from the
            source `df`? Defaults to `False`

    Returns:
        `pandas.DataFrame`: The `df` with duplicate values removed
    """
    return df.drop_duplicates(subset=columns,
                              keep=keep,
                              inplace=inplace)