leemengtaiwan
8/30/2017 - 11:26 AM

Draw boxplot for one categorical column and one numerical column in Pandas dataframe

Draw boxplot for one categorical column and one numerical column in Pandas dataframe

import matplotlib.pyplot as plt
import pandas as pd

def draw_boxplot_numerical_categorical_cols(df, numerical_col, categorical_col):
    categories = []
    for category in df[categorical_col].unique():
        categories.append({
                'categorical_col': category,
                'numerical_col': df[df[categorical_col] == category][numerical_col]})
        
    
    plt.figure(figsize=(10, 8))
    plt.boxplot([e['numerical_col'] for e in categories], labels=[e['categorical_col'] for e in categories]);