Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menambah Helaian Baharu pada Fail Excel Sedia Ada Menggunakan Panda?

Bagaimana untuk Menambah Helaian Baharu pada Fail Excel Sedia Ada Menggunakan Panda?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-04 11:04:30196semak imbas

How to Append New Sheets to Existing Excel Files Using Pandas?

Menambah Helaian Baharu pada Fail Excel Sedia Ada dengan Panda

Panda menyediakan antara muka yang mudah untuk bekerja dengan fail Excel. Walau bagaimanapun, apabila menyimpan helaian baharu ke fail sedia ada, pengguna sering menghadapi cabaran. Artikel ini menangani isu ini dan menyediakan penyelesaian yang komprehensif.

Kod Sedia Ada:

Kod yang disediakan menyimpan dua DataFrame kepada dua helaian tetapi gagal menambah lebih banyak helaian tanpa kehilangan data asal kerana menutup objek ExcelWriter.

Terbaik Pendekatan:

Aliran kerja yang ideal melibatkan mencipta fail Excel, menyimpan beberapa data, menutup ExcelWriter dan kemudian membukanya semula untuk menambah lebih banyak helaian. Pendekatan ini memastikan pemeliharaan data.

Integrasi Openpyxl:

Untuk menambah helaian tanpa kehilangan data, Pandas boleh menggunakan Openpyxl. Openpyxl membenarkan manipulasi fail Excel secara langsung. Dengan memuatkan fail sedia ada menggunakan load_workbook dan menetapkannya sebagai buku ExcelWriter, kami boleh menambah helaian baharu tanpa menjejaskan helaian sedia ada.

Contoh Lengkap:

Berikut ialah contoh lengkap:

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

path = r"C:\Users\fedel\Desktop\excelData\PhD_data.xlsx"

# Generate initial data
x1 = np.random.randn(100, 2)
df1 = pd.DataFrame(x1)

x2 = np.random.randn(100, 2)
df2 = pd.DataFrame(x2)

# Write initial sheets
writer = pd.ExcelWriter(path, engine='xlsxwriter')
df1.to_excel(writer, sheet_name='x1')
df2.to_excel(writer, sheet_name='x2')
writer.close()

# Open existing file and add new sheets
book = load_workbook(path)
writer = pd.ExcelWriter(path, engine='openpyxl')
writer.book = book

# Generate new data
x3 = np.random.randn(100, 2)
df3 = pd.DataFrame(x3)

x4 = np.random.randn(100, 2)
df4 = pd.DataFrame(x4)

# Append new sheets
df3.to_excel(writer, sheet_name='x3')
df4.to_excel(writer, sheet_name='x4')

writer.close()</code>

Kod ini mula-mula menghasilkan dua helaian dan menutup ExcelWriter. Kemudian, ia membuka semula fail dan menggunakan Openpyxl untuk menambah dua helaian lagi, mengekalkan data asal.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Helaian Baharu pada Fail Excel Sedia Ada Menggunakan 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