Присвойте имя столбца столбцу в DataFrame - PullRequest
0 голосов
/ 28 ноября 2018

Вот мой код,

avg_data = dataset.groupby('Gender').mean()
print(avg_data)

Вывод:

            Height      Weight     Index
Gender                                  
Female  170.227451  105.698039  3.709804
Male    169.648980  106.314286  3.787755

Я хочу построить эти данные с помощью countplot.

sns.countplot(x='Gender',hue='Height',data=avg_data)

Ошибка!

ValueError                                Traceback (most recent call 
last)
<ipython-input-54-59e9d525d88d> in <module>
----> 1 sns.countplot(x='Gender',hue='Height',data=avg_data)

/usr/local/lib/python3.6/dist-packages/seaborn/categorical.py in 
countplot(x, y, hue, data, order, hue_order, orient, color, palette, 
saturation, dodge, ax, **kwargs)
3551                           estimator, ci, n_boot, units,
3552                           orient, color, palette, saturation,
-> 3553                           errcolor, errwidth, capsize, dodge)
3554 
3555     plotter.value_label = "count"

/usr/local/lib/python3.6/dist-packages/seaborn/categorical.py in 
__init__(self, x, y, hue, data, order, hue_order, estimator, ci, 
n_boot, units, orient, color, palette, saturation, errcolor, errwidth, 
capsize, dodge)
1605         """Initialize the plotter."""
1606         self.establish_variables(x, y, hue, data, orient,
-> 1607                                  order, hue_order, units)
1608         self.establish_colors(color, palette, saturation)
1609         self.estimate_statistic(estimator, ci, n_boot)

/usr/local/lib/python3.6/dist-packages/seaborn/categorical.py in 
establish_variables(self, x, y, hue, data, orient, order, hue_order, 
units)
153                 if isinstance(input, string_types):
154                     err = "Could not interpret input 
'{}'".format(input)
--> 155                     raise ValueError(err)
156 
157             # Figure out the plotting orientation

ValueError: Could not interpret input 'Gender'

Он обнаруживает, что нет столбца «Пол».Как это решить?

1 Ответ

0 голосов
/ 28 ноября 2018

Прямо сейчас, Gender - это индекс результирующего кадра данных.Просто введите reset_index() для этой команды:

avg_data = dataset.groupby('Gender').mean().reset_index()

ИЛИ

avg_data = dataset.groupby('Gender', as_index=False).mean()

Это создаст Gender в качестве столбца кадра данных, на котором вы можете построить график.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...