繁体   English   中英

使用xlwings将Pandas Data Frame实时写入Excel文件(.XLSX)

[英]Writing Pandas Data Frame live to Excel file (.XLSX) using xlwings

我必须看到excel文件与我正在从CSV文件中读取的pandas数据框一起更新。

以下是我的CSV文件。 我正在大熊猫的帮助下阅读CSV,但我不知道如何将其放入Excel文件中。

在此输入图像描述

提前致谢!

我想你不能这样做。 例如,参见this ,它表示Excel可以处理文档的副本。

要将数据帧写入Excel文件,您可以像这样使用pandas to_excel()方法:

your_dataframe.to_excel(output.xlsx')

使用Excel的更多细节的一个好模块是xlwt。 您可以看到本教程 ,其中介绍了如何在许多示例中使用它。

我假设您不太关心速度,因为更新将实时发生并且对用户可见。 我能想到实现这个目标的方法是使用win32 apis for com对象,在Windows上通过win32com包提供。 为了与其他对象通信,我们通常需要win32com.client包。

使用这个,写一个开放的excel书是相当简单的:

import win32com.client as win32

filename = "book.xlsx"

# Get a handle to excel:
excel = win32.gencache.EnsureDispatch('Excel.Application')
# Find open workbook with "filename" (which is the base name only)
wb = excel.Workbooks(filename)
# Set active sheet
ws = wb.Worksheets(1)

# We can access a single cell with "Cells":
ws.Cells(1,1).Value = "A1"
# Or multiple cells with a "Range" (note the strange tuple format of values)
ws.Range("C1:C3").Value =[("C1",), ("C2",), ("C3",)]

这个例子应该很简单,可以用来将你的pandas数据写入excel。 但是,它需要您“手动”循环遍历不同的单元格并将它们写入Excel文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM