Ошибка типа: неподдерживаемые типы операндов для /: 'str' и 'int' (2) - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь показать график из моего набора данных, который содержит цифры и буквы.

grouped = pd.DataFrame(train.groupby(['shop_id', 'date_block_num'])['item_cnt_day'].sum().reset_index())
fig, axes = plt.subplots(nrows=5, ncols=2, sharex=True, sharey=True, figsize=(16,20))
num_graph = 10
id_per_graph = ceil(grouped.shop_id.max() / num_graph)
count = 0
for i in range(5):
    for j in range(2):
        sns.pointplot(x='date_block_num', y='item_cnt_day', hue='shop_id', data=grouped[np.logical_and(count*id_per_graph <= grouped['shop_id'], grouped['shop_id'] < (count+1)*id_per_graph)], ax=axes[i][j])
        count += 1

Затем он говорит:

TypeError                                 Traceback (most recent call last)
<ipython-input-19-77428a365041> in <module>
      2 fig, axes = plt.subplots(nrows=5, ncols=2, sharex=True, sharey=True, figsize=(16,20))
      3 num_graph = 10
----> 4 id_per_graph = ceil(grouped.shop_id.max() / num_graph)
      5 count = 0
      6 for i in range(5):

TypeError: unsupported operand type(s) for /: 'str' and 'int'

1 Ответ

0 голосов
/ 14 января 2020

попробуйте id_per_graph = ceil(max(grouped.shop_id) / num_graph) вы использовали .max() неправильно

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