🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

Q&A

解決済

1回答

467閲覧

Excelのデータ整理をPandasを使って整理・可視化したい

T_1

総合スコア17

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

0グッド

0クリップ

投稿2021/03/16 07:35

前提・実現したいこと

Python Pandasでkeyerro not indexがでてしまう事を改善したい
なぜnot indexが出てしまうのかわかりません。
もしかしたらindexの理解の仕方が間違っているのかもしれませんのでご教授お願いします。

発生している問題・エラーメッセージ

顧客管理№ 設置量1 交換期限 売上日 売上数量 顧客名 A 110000688.0 80.0 46266.0 43632.777778 34.655556 B 110002710.0 80.0 47757.0 43632.777778 26.650000 C 110002305.0 80.0 44713.0 43632.777778 8.716667 D 110000487.0 80.0 48000.0 43632.777778 2.127778 F 110000022.0 80.0 44470.0 43632.777778 14.294444 ... ... ... ... ... ... G 110004201.0 80.0 47757.0 43632.777778 2.611111 H 110003857.0 80.0 44470.0 43632.777778 18.611111 I 110001760.0 80.0 48000.0 43632.777778 5.552778 J 110002285.0 80.0 45170.0 43632.777778 0.041667 K 110005142.0 80.0 48000.0 43632.777778 4.319444 df[["顧客名","売上日","売上数量"]].groupby("顧客名").mean() KeyError: "['売上日', '売上数量'] not in index"

該当のソースコード

Pandas

1

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

顧客名がindexになっているので、reset_indexを使ってindexからcolumnsに戻してから処理しましょう。

python

1>>> print(df) 2 顧客管理 設置量1 交換期限 売上日 売上数量 3顧客名 4A 110000688.0 80.0 46266.0 43632.777778 34.655556 5B 110002710.0 80.0 47757.0 43632.777778 26.650000 6C 110002305.0 80.0 44713.0 43632.777778 8.716667 7D 110000487.0 80.0 48000.0 43632.777778 2.127778 8F 110000022.0 80.0 44470.0 43632.777778 14.294444 9A 110004201.0 80.0 47757.0 43632.777778 2.611111 10B 110003857.0 80.0 44470.0 43632.777778 18.611111 11C 110001760.0 80.0 48000.0 43632.777778 5.552778 12D 110002285.0 80.0 45170.0 43632.777778 0.041667 13E 110005142.0 80.0 48000.0 43632.777778 4.319444 14>>> df_mean = df.reset_index()[["顧客名","売上日","売上数量"]].groupby("顧客名").mean() 15>>> print(df_mean) 16 売上日 売上数量 17顧客名 18A 43632.777778 18.633333 19B 43632.777778 22.630555 20C 43632.777778 7.134722 21D 43632.777778 1.084722 22E 43632.777778 4.319444 23F 43632.777778 14.294444

投稿2021/03/16 08:02

ppaul

総合スコア24670

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問