BUG: hist raises TypeError when df contains non numeric column by sinhrks · Pull Request #7277 · pandas-dev/pandas (original) (raw)
DataFrame.hist without by keyword raises TypeError when it contains non-numeric column.
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import pandas.util.testing as tm
n=100
gender = tm.choice(['Male', 'Female'], size=n)
classroom = tm.choice(['A', 'B', 'C'], size=n)
single = tm.choice(['S'], size=n)
df = pd.DataFrame({'gender': gender,
'classroom': classroom,
'height': np.random.normal(66, 4, size=n),
'weight': np.random.normal(161, 32, size=n),
'category': np.random.randint(4, size=n)})
df.hist(by='gender')
# This works, even though 'classroom' (str) column in still contained
df.hist()
# TypeError: cannot concatenate 'str' and 'float' objects