Bagaimana untuk Menambah Helaian Baharu pada Fail Excel Sedia Ada Tanpa Ditimpa dalam Panda?

Linda Hamilton
Lepaskan: 2024-11-03 02:49:29
asal
306 orang telah melayarinya

How to Add New Sheets to an Existing Excel File Without Overwriting in Pandas?

Cara Mengekalkan Helaian Excel Sedia Ada Semasa Menambah Helaian Baharu

Dalam Panda, menyimpan helaian baharu ke fail Excel sedia ada memberikan cabaran untuk mengekalkan kandungan asal. Untuk menyelesaikan masalah ini, kami akan meneroka kaedah yang berkesan menggunakan 'openpyxl'.

Isunya

Gelagat lalai Panda adalah untuk menulis ganti helaian sedia ada apabila menambah helaian baharu. Ini boleh menyebabkan kehilangan data apabila kami berhasrat untuk menambahkan data baharu pada fail sedia ada.

Penyelesaian Menggunakan 'openpyxl'

'openpyxl' menyediakan cara untuk mengendalikan sedia ada buku kerja tanpa menulis ganti. Berikut ialah pecahan langkah demi langkah:

  1. Muat Buku Kerja Sedia Ada: Muatkan fail Excel sedia ada menggunakan load_workbook().
  2. Buat ExcelWriter: Cipta objek ExcelWriter menggunakan enjin 'openpyxl' dan tentukan laluan yang sama seperti fail sedia ada.
  3. Penulis Bersekutu dan Buku Kerja: Tetapkan atribut buku penulis kepada yang dimuatkan buku kerja untuk menyambungkannya.
  4. Tulis Helaian Baharu: Tambahkan helaian baharu pada buku kerja sedia ada dengan memanggil kaedah to_excel() pada setiap DataFrame, memberikan nama helaian yang sesuai.
  5. Tutup Penulis: Setelah semua helaian ditambahkan, tutup ExcelWriter untuk menyimpan perubahan.

Contoh:

Berikut ialah contoh kod untuk menggambarkan proses:

<code class="python">import pandas as pd
from openpyxl import load_workbook

# Load existing workbook
book = load_workbook('existing.xlsx')

# Create ExcelWriter and associate it with the workbook
writer = pd.ExcelWriter('existing.xlsx', engine='openpyxl')
writer.book = book

# Append new sheets
new_df1 = pd.DataFrame({'x': [1, 2, 3]})
new_df2 = pd.DataFrame({'y': [4, 5, 6]})

new_df1.to_excel(writer, sheet_name='NewSheet1')
new_df2.to_excel(writer, sheet_name='NewSheet2')

# Save changes
writer.close()</code>
Salin selepas log masuk

Dalam contoh ini, kod itu mengekalkan helaian sedia ada dalam 'existing.xlsx' dan menambah dua helaian baharu, 'NewSheet1' dan 'NewSheet2'.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Helaian Baharu pada Fail Excel Sedia Ada Tanpa Ditimpa dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan