Python 如何在覆盖现有数据的同时将df写入工作表?
我目前正在使用Pandas将数据帧写入特定的工作表,但它不会删除“旧”数据。它只是写在上面 这意味着如果我的数据框是5行,但旧数据是10行。然后我将覆盖前5行,但旧数据仍保留在其余行中 如何修改此代码以覆盖整个指定的工作表 我有来自工作表的报表馈送的数据,因此很遗憾,我无法删除行或创建新工作表Python 如何在覆盖现有数据的同时将df写入工作表?,python,pandas,openpyxl,Python,Pandas,Openpyxl,我目前正在使用Pandas将数据帧写入特定的工作表,但它不会删除“旧”数据。它只是写在上面 这意味着如果我的数据框是5行,但旧数据是10行。然后我将覆盖前5行,但旧数据仍保留在其余行中 如何修改此代码以覆盖整个指定的工作表 我有来自工作表的报表馈送的数据,因此很遗憾,我无法删除行或创建新工作表 book = load_workbook(workbookname) writer = pd.ExcelWriter(workbookname, engine='openpyxl') writer.boo
book = load_workbook(workbookname)
writer = pd.ExcelWriter(workbookname, engine='openpyxl')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
df.to_excel(writer, "SheetName")
writer.save()
如果您有一个现有数据框,希望在不重新创建列信息的情况下清空该数据框:
df_empty = df[0:0]
df_empty是一个具有零行但与df具有相同列结构的数据帧
您也可以使用此或从Pandas中删除来删除表中的行。您建议如何将其合并到我的上述代码中?我已经成功地做到了,但这并不能解决覆盖问题,因为我基本上是想用一个空的0:0 DataFrame覆盖数据,这并不能回答问题。直接在openpyxl中进行。你能给我一个例子吗?