Maison >développement back-end >Tutoriel Python >Comment ajouter un nouveau DataFrame à une feuille Excel existante en Python à l'aide de Pandas ?
Ajouter une feuille Excel existante avec un nouveau dataframe à l'aide de Python Pandas
Dans cet article, nous explorerons comment ajouter un nouveau dataframe à un existant Feuille de calcul Excel utilisant Python Pandas.
Problème :
Ajout d'une nouvelle trame de données à un La feuille Excel existante à l'aide de la fonction Pandas to_excel() écrase les données existantes. L'objectif est d'ajouter les nouvelles données à la fin de la feuille actuelle, en conservant le contenu existant.
Solution :
Pour résoudre ce problème, nous pouvons tirer parti des étapes suivantes :
Charger le classeur existant :
Préparez le nouveau Dataframe :
Créer un nouveau classeur :
Écrivez le nouveau dataframe :
Copier les cellules de la nouvelle vers la feuille existante :
Supprimer la nouvelle feuille :
Enregistrer et fermer le Classeur :
Exemple :
import pandas as pd import openpyxl from openpyxl.utils import get_column_letter # Load existing workbook workbook = openpyxl.load_workbook("existing_excel.xlsx") sheet_names = workbook.sheetnames # Prepare new dataframe new_df = pd.DataFrame({ "Name": ["Alice", "Bob", "Carol"], "Age": [25, 30, 35] }) # Create new workbook writer with pd.ExcelWriter("existing_excel.xlsx", engine="openpyxl", mode="a", if_sheet_exists="new") as writer: # Write new dataframe new_df.to_excel(writer, sheet_name="NewData", index=False) # Get worksheet objects new_sheet = writer.sheets["NewData"] existing_sheet = workbook["ExistingData"] # Get last row in existing sheet last_row = existing_sheet.max_row # Copy cells from new sheet to existing sheet copy_excel_cell_range( src_ws=new_sheet, tgt_ws=existing_sheet, src_min_row=2, src_max_row=new_sheet.max_row, tgt_min_row=last_row + 1, with_style=True ) # Remove temporary sheet workbook.remove(new_sheet) # Save and close workbook.save("existing_excel.xlsx")
En suivant ceci approche, vous pouvez ajouter de manière transparente de nouvelles données à une feuille Excel existante sans écraser le contenu existant.
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!