前提・実現したいこと
複数のCSVファイルを読み込み、それぞれのCSVファイルに対して同じ処理を行い、
同じエクセルファイル内で別々のシートに出力したい
発生している問題・エラーメッセージ
エラーメッセージは無いのですが、出力されたシートが一つのみでとなっており
繰り返し処理はできているものの同じシートに上書きされている状態
該当のソースコード
df = glob.glob('/content/drive/MyDrive/rfm/all/*.csv') for file in df: df = pd.read_csv(file) df['購入日'] = pd.to_datetime(df['購入日']) g = max(df['購入日']).strftime('%Y%m%d') df['Recency'] = (datetime.datetime.today() - df['購入日']).dt.days / 30 df['Recency'] = round(df['Recency']).astype(int) df_pivot = df.pivot_table(index='顧客番号', values = ['購入金額','購入日','Recency'], aggfunc = {'購入金額':['sum','count'], '購入日':['max','min'], 'Recency':'min'}, fill_value = 0) df_sort = df_pivot.sort_values(('購入金額','sum'), ascending=False) df_sort.to_excel('/content/drive/MyDrive/rfm/all/output/rfm_output.xlsx', sheet_name = f'rfm_until_{g}')
回答2件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2022/02/08 04:25