Итак, у меня несколько заказов в месяц, и я хочу узнать среднюю стоимость транзакций в месяц. Код, который я использую:
# Average value of transactions per month:
trend_month=pd.DataFrame(order_df.groupby('year_month').agg({'order_sum':'mean'}).rename(columns={'order_sum':'mean_transaction'})).reset_index()
x1 = trend_month.year_month.tolist()
y1 = trend_month.mean_transaction.tolist()
mapp = {}
for m,v in zip(x1, y1):
mapp[m] = v
xn = [calendar.month_abbr[int(x)] for x in sorted(x1)]
vn = [mapp[x] for x in sorted(x1)]
plt.figure(figsize=(10,7))
ax=sns.barplot(x=xn,y=vn, color='#ed5569')
ax.set_title("Average value of transaction per month")
ax.set_xlabel('Month')
ax.set_ylabel('Value')
Это выводит indexerror: IndexError: индекс списка вне диапазона
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-74-ce509007ff5a> in <module>
7 for m,v in zip(x1, y1):
8 mapp[m] = v
----> 9 xn = [calendar.month_abbr[int(x)] for x in sorted(x1)]
10 vn = [mapp[x] for x in sorted(x1)]
11
<ipython-input-74-ce509007ff5a> in <listcomp>(.0)
7 for m,v in zip(x1, y1):
8 mapp[m] = v
----> 9 xn = [calendar.month_abbr[int(x)] for x in sorted(x1)]
10 vn = [mapp[x] for x in sorted(x1)]
11
~/opt/anaconda3/lib/python3.7/calendar.py in __getitem__(self, i)
57
58 def __getitem__(self, i):
---> 59 funcs = self._months[i]
60 if isinstance(i, slice):
61 return [f(self.format) for f in funcs]
IndexError: list index out of range
Не понимаю, как / почему список находится вне диапазона , Кто-нибудь, кто может увидеть причину?