ホームページ > バックエンド開発 > Python チュートリアル > Python で上書きせずに既存の Excel シートに Pandas DataFrame を追加するにはどうすればよいですか?

Python で上書きせずに既存の Excel シートに Pandas DataFrame を追加するにはどうすればよいですか?

DDD
リリース: 2024-12-03 12:49:11
オリジナル
638 人が閲覧しました

How Can I Append a Pandas DataFrame to an Existing Excel Sheet in Python Without Overwriting?

Python Pandas を使用して既存の Excel シートに新しいデータフレームを追加する

問題:

既存の Excel ファイルとパンダのデータフレーム。既存の Excel シートを上書きせずに、その末尾に DataFrame を追加したいと考えています。

解決策:

既存の Excel にデータを追加するには、主に 2 つの方法があります。 Pandas を使用したシート:

アプローチ 1: 使用ExcelWriter

import pandas as pd

df = pd.DataFrame(...)

with pd.ExcelWriter('existing_sheet.xlsx', mode='a', engine='openpyxl') as writer:
    df.to_excel(writer, sheet_name='Sheet1', header=False, index=False, startrow=writer.sheets['Sheet1'].max_row + 1)
ログイン後にコピー

アプローチ 2: Openpyxl と Pandas の使用

import pandas as pd
from openpyxl import load_workbook

df = pd.DataFrame(...)

# Load existing Excel workbook
book = load_workbook('existing_sheet.xlsx')
sheet = book['Sheet1']

# Find last row in existing Excel sheet
last_row = sheet.max_row

# Append DataFrame data to existing sheet starting from last row + 1
pd.DataFrame.to_excel(df, book, sheet_name='Sheet1', startrow=last_row + 1, index=False)

# Save changes to existing Excel file
book.save('existing_sheet.xlsx')
ログイン後にコピー

追加のヒント:

  • シートが存在しない場合、Pandas は自動的に作成されます。
  • startrow パラメーターを使用して、データを追加する開始行を指定できます。
  • 既存のセル スタイルを保持するには、Openpyxl と Pandas を使用するときに copy_excel_cell_range 関数で with_style=True を設定します。
  • Pandas バージョンの場合
1.4.0 では、リンクされたコード例のヘルパー関数を使用して、データを上書きせずに追加します。

以上がPython で上書きせずに既存の Excel シートに Pandas DataFrame を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート