前提・実現したいこと
【pandas】リスト内の全てのデータでデータフレームへフィルターをかけてデータを抽出し、Excelへそれぞれ別シートで張り付ける方法
発生している問題・エラーメッセージ
name 'i' is not defined
該当のソースコード
python
1 A B 20 リンゴ 東京 31 ナス 東京 42 バナナ 大阪 53 リンゴ 奈良 64 ナス 埼玉 75 イチゴ 大阪 8 9というデータフレームdfについて、 10Aの重複をuniqueで削除してリスト化します。 11 12food_list = ['リンゴ'、'ナス'、'バナナ'、'イチゴ'] 13 14その後、 15リンゴであればAにリンゴとある行のみをフィルターして、df_ringoを作成し、 16エクセルへシート名 = リンゴでデータを貼り付け、 17次にナスでフィルターして同様にdf_nasuを作成して、 18リンゴと同じブック内に別シートでシート名 = ナスで貼り付け・・・繰り返しして、 19リスト内の4種類でフィルターしたデータを1つのブック内に別シートで貼り付けたいと思っています。 20 21for i in range(4): 22 df_i = df.query('A == @food_list[i]') 23 with pd.ExcelWriter('データ/foods.xlsx') as writer: 24 df_i.to_excel(writer, sheet_name = food_list[i]) 25 26上記のようなfor構文を作成したのですが、 27name 'i' is not defined 28 29というエラーが出てしまっております。 30以上、1点アドバイスよろしくお願い致します。
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー