Lorsqu'ils traitent des données Excel en Python, les utilisateurs peuvent rencontrer le défi d'enregistrer de nouvelles feuilles dans un fichier Excel existant . Ce guide fournit une solution utilisant la bibliothèque Pandas, couvrant les limitations du moteur "xlsxwriter" et l'implémentation du moteur "openpyxl".
Dans le code donné, le l'utilisateur crée un fichier Excel avec deux feuilles, "x1" et "x2". Cependant, toute tentative d'ajout de nouvelles feuilles, « x3 » et « x4 », remplace les données d'origine. Cela se produit car le moteur "xlsxwriter" enregistre uniquement les données dans un nouveau fichier ou écrase un fichier existant.
Pour conserver les données existantes lors de l'ajout de nouvelles feuilles, utilisez le moteur "openpyxl". Le code suivant illustre cette approche :
<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" book = load_workbook(path) # Load the existing Excel file writer = pd.ExcelWriter(path, engine='openpyxl') # Create a Pandas writer connected to the workbook writer.book = book # Assign the workbook to the Pandas writer x3 = np.random.randn(100, 2) df3 = pd.DataFrame(x3) x4 = np.random.randn(100, 2) df4 = pd.DataFrame(x4) df3.to_excel(writer, sheet_name='x3') # Write the new dataframes to the existing file df4.to_excel(writer, sheet_name='x4') writer.close() # Save the changes to the file</code>
Dans le code suggéré à partir du lien donné :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!