Создание HeatMap из серии Pandas MultiIndex - PullRequest
0 голосов
/ 31 января 2019

У меня есть DF Панды, и мне нужно создать карту тепла.Мои данные выглядят так, и я хотел бы поместить Годы в столбцах, Дни в строках, а затем использовать их с Seaborn для создания тепловой карты

Я пробовал несколько способов, но всегда получал «противоречивую форму»когда я выбрал DF, то какие-либо рекомендации по его преобразованию?

Год и Дни являются индексом этой серии

2016

  Tuesday  4
  Wednesady 6
  .....

2017

  Tuesday  4.4
  Monday   3.5
 ....

импорт морского происхождения как sns ax = sns.heatmap (dayofweek)

1 Ответ

0 голосов
/ 31 января 2019

Если у вас есть DataFrame, подобный этому:

years = range(2016,2019)
months = range(1,6)

df = pd.DataFrame(index=pd.MultiIndex.from_product([years,months]))
df['vals'] = np.random.random(size=len(df))

Вы можете переформатировать данные в прямоугольную форму, используя:

df2 = df.reset_index().pivot(columns='level_0',index='level_1',values='vals')

sns.heatmap(df2)

enter image description here

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