Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menambah Helaian Baharu pada Fail Excel Sedia Ada Tanpa Ditimpa dalam Panda?

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

Linda Hamilton
Linda Hamiltonasal
2024-11-03 02:49:29345semak imbas

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>

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!

Kenyataan:
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