Pandas fournit une option robuste pour écrire dans des fichiers Excel, mais un problème survient lors de l'écriture dans un fichier existant sans écraser son contenu. Par défaut, pandas.ExcelWriter remplace les données existantes lors de la création de feuilles.
Considérez le code suivant :
import pandas as pd writer = pd.ExcelWriter('Masterfile.xlsx') data_filtered.to_excel(writer, "Main", cols=['Diff1', 'Diff2']) writer.save()
Dans ce scénario, "Masterfile.xlsx " a des onglets préexistants. Lorsque ce code s'exécute, une nouvelle feuille « Principale » est créée et remplie, mais tous les autres onglets sont effacés.
Pour éviter la perte de données, Pandas utilise la bibliothèque openpyxl pour travailler avec XLSX fichiers. Voici une version améliorée du code :
import pandas as pd from openpyxl import load_workbook book = load_workbook('Masterfile.xlsx') writer = pd.ExcelWriter('Masterfile.xlsx', engine='openpyxl') writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) data_filtered.to_excel(writer, "Main", cols=['Diff1', 'Diff2']) writer.save()
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!