Я строю данные за год (июнь - май) по графику с усами, по месяцам.
У меня есть данные в серии панд:
Date
2018-06-01 0.012997
2018-06-02 0.009615
2018-06-03 0.012884
2018-06-04 0.013358
2018-06-05 0.013322
2018-06-06 0.011532
2018-06-07 0.018297
2018-06-08 0.018820
2018-06-09 0.031254
2018-06-10 0.016529
...
Name: Value, dtype: float64
Я могу построить его, но я не могу получить столбец с названием месяца, поэтому он представлен скорее просто числами. Однако, поскольку месяцы не от января = декабря, номер месяца таким образом не имеет смысла.
Есть ли способ получить название месяца, когда я создаю такой df с помощью функции Grouper?
Код, который я использую, изначально был https://machinelearningmastery.com/time-series-data-visualization-with-python/
Если я правильно понимаю, Grouper упорядочивает ряды в массив, содержащий данные за месяц, поэтому я думаю, что это будет точка, когда это будет возможно (если вообще возможно):
groups = series.groupby(pd.Grouper(freq = 'M'))
months = pd.concat([pd.DataFrame(x[1].values) for x in groups], axis=1)
Я пытался найти, но не смог получить подсказку о том, как назвать столбец на основе какого-либо условия при использовании функции pd.DataFrame. Я был бы очень признателен, если бы кто-нибудь мог помочь мне в правильном направлении.
fig = plt.figure(figsize = (16,8))
#some code for other plots
ax3 = fig.add_subplot(212)
groups = series.groupby(pd.Grouper(freq = 'M'))
months = pd.concat([pd.DataFrame(x[1].values) for x in groups], axis=1)
months = pd.DataFrame(months)
months.columns = range(1,13)
months.boxplot()
ax3.set_title('Results June 2018 - May 2019')
plt.show()