#python #pandas #types #data-visualization #histogram
Вопрос:
%matplotlib inline
for column in df.columns:
if df[column].dtype =="int64":
df[column].hist(title=column)
else:
df[column].plot(kind="bar", title=column)
AttributeError: 'Rectangle' object has no property 'title'
Я хотел бы распечатать гистограмму, является ли тип dtype int, и гистограмму, является ли тип dtype объектом, но код не работает.
Комментарии:
1. «Не работает» — это очень широкое утверждение. С какой конкретной проблемой вы столкнулись? Советы:
title
этот аргумент доступен только в более новых версиях pandas. Проверьте свою версию2. Не работает означает, что возвращает ошибку атрибута: объект «Прямоугольник» не имеет свойства «заголовок», а не участки
3. Я попытался удалить заголовок, а затем возникла новая ошибка :ошибка ввода: нет числовых данных для построения
4. нет числовых данных для построения , потому что вы не можете построить столбчатую диаграмму строки, один из ваших других столбцов имеет тип object, и вы пытаетесь применить столбчатую диаграмму
5. @AlessandroMondin я только что отредактировал свой ответ, чтобы учесть тип объекта, используя график подсчета морских косточек, проверьте это
Ответ №1:
Попробуйте срезать свои столбцы в начале, и вам понадобятся подзаголовки/подзаголовки для построения нескольких графиков
import seaborn as sns
numeric_columns = df.select_dtypes(include=['int64','float64']).columns
n_rows = 2
n_cols= 2
for i, column in enumerate(df.columns,1):
plt.subplot(n_rows,n_cols,i)
if column in numeric_columns:
df[column].plot(kind="hist", title=column)
else:
sns.countplot(df[column])
И, как уже упоминалось в коде, вы хотите получить аргумент заголовка, если вы используете более старую версию pandas