我需要将数据框数据写入Word文档中的现有表。文档中的表已经有两行,我需要在这两行之后添加df行。使用python-docx
库
document = Document(docx=document_name)
table = document.tables[0]
for i in range(orders.shape[0]):
table.add_row()
for i in range(orders.shape[0]):
for j in range(orders.shape[1]):
table.cell(i + 2, j).text = str(orders.values[i,j])
document.save('xxx.docx')
这个脚本工作得很好,但是它花了很长时间:它需要10秒来写一行。如果数据框有5000行,这是一个问题。有人知道更快的方法吗?
从避免重复的行和列查找开始,像这样:
values = orders.values
for i in range(orders.shape[0]):
row = table.add_row()
for j, cell in enumerate(row.cells):
cell.text = str(values[i, j])
,看看你有多少进步。