やりたいこと:
Python3で、すでにあるExcelファイル(.xlsx)の一部を書き換えたい
(前のデータは残したい)
調べたこと:
Qiitaや
ソースコード:
下記のように、ExcelWriterを使うとよいみたいなことがあったので実際にやってみたのですが、
前のデータを上書きされてしまいます。ほかの方法でもよいのですが、既存のデータは残せないでしょうか。
def write_qd_test(w_df, flist, path, gpname): gp = w_df.groupby(gpname) writer = pd.ExcelWriter(path + flist[0]) for phase, sdf in gp: print(phase, ":グループ分類(DRフェーズ)") print(sdf, ":データ本体") sdf.to_excel(writer, sheet_name=phase) worksheet = writer.sheets[phase] # worksheetオブジェクト取得 options = { # ''data': sdf.values.tolist(), 'header_row': False, 'total_row': True, 'columns': [{'total_function': 'sum'}] } worksheet.add_table('A1:CA7', options)
「前のデータ」をどうやって読み込んでいますか。正しく読み込めていれば書き換えなかった場所は当然にそのままセーブされるし、読み込めていなければとうぜんファイルは上書きされて消えてしまいます。つまり問題の本質は質問に提示されたコードの外にあると考えられます。
回答2件
あなたの回答
tips
プレビュー