Pandasのpd.pivot_table()を用いて、マーケティング関連のあるデータフレームを集計しました。あるIDコードについて、その各値ごとの売り上げ個数が集計できたのですが、その後、sort_valuesを用いて、販売数の多い順に並べようとしたところ、エラーが出てしまいます。ilocで要素を指定してprintするとちゃんと要素が表示されるのですが、なぜかsort_valuesの時のみエラーとなります。
す。具体的には、以下のコードです。
Python3
1df_247996_pivot= pd.pivot_table(df_247996, values="販売数", columns="商品コード", aggfunc="sum") 2print(df_247996_pivot.iloc[0,1]) 3df_247996_pivot_sorted = df_247996_pivot.sort_values(by=0,axis=1,ascending=False)
エラーは以下の通りです。(81はprintの結果です)
81
KeyError Traceback (most recent call last)
<ipython-input-32-a842311bfd05> in <module>()
4
5 print(df_247996_pivot.iloc[0,1])
----> 6 df_247996_pivot_sorted = df_247996_pivot.sort_values(by=0,axis=1,ascending=False)
~\Miniconda3\envs\stats\lib\site-packages\pandas\core\frame.py in sort_values(self, by, axis, ascending, inplace, kind, na_position)
4419 by = by[0]
4420 k = self._get_label_or_level_values(by, axis=axis,
-> 4421 stacklevel=stacklevel)
4422
4423 if isinstance(ascending, (tuple, list)):
~\Miniconda3\envs\stats\lib\site-packages\pandas\core\generic.py in _get_label_or_level_values(self, key, axis, stacklevel)
1377 values = self.axes[axis].get_level_values(key)._values
1378 else:
-> 1379 raise KeyError(key)
1380
1381 # Check for duplicates
KeyError: 0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。