def top5(df):
    """Given dataframe, generate top 5 unique values for non-numeric data"""
    columns = df.select_dtypes(include=['object', 'category']).columns
    for col in columns:
        print('Top 5 unique values of ' + col)
        print(df[col].value_counts().reset_index().rename(columns={'index':
            col, col: 'Count'})[:min(5, len(df[col].value_counts()))])
        print(' ')
