Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Excel:保留现有数据_Python_Python 2.7_Pandas_Export To Excel - Fatal编程技术网

Python Excel:保留现有数据

Python Excel:保留现有数据,python,python-2.7,pandas,export-to-excel,Python,Python 2.7,Pandas,Export To Excel,我尝试了以下代码: book = load_workbook('output.xlsx') writer = pd.ExcelWriter('output.xlsx') writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) Output.to_excel('output.xlsx', "Main", index=True, header=False, startcol = pickupc

我尝试了以下代码:

book = load_workbook('output.xlsx')
writer = pd.ExcelWriter('output.xlsx')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
Output.to_excel('output.xlsx', "Main", index=True, header=False, startcol = pickupcol)
writer.save()
这是循环的一部分,但我发现to_excel一次只能写入256列,所以我决定使用变量
pickupcol
,这样我一次只能添加一个部分。不幸的是,它删除了以前的空白单元格数据

想法/建议?
谢谢

startcol
指Excel文件中转储数据帧的部分左上角单元格的列号。 通过to_excel函数的参数
columns
,选择要写入excel的数据框的列。 下面的代码适合我。它不会覆盖以前的数据

In [57]: import pandas as pd

In [58]: import numpy as np

In [59]: df = pd.DataFrame(np.random.randn(5,300))

In [60]: writer = pd.ExcelWriter("output.xlsx")

In [61]: df.to_excel(writer,columns=range(0,255))

In [62]: df.to_excel(writer,columns=range(256,300),startcol=257,index='False')

In [63]: writer.save()

顺便说一下,我可以一次写入所有列,不受256列的限制。我正在使用pandas版本“0.15.2”

为什么不写一个csv,然后用Excel打开它?您是否尝试在每次迭代中打印
pickupcol
?我建议创建一个新的Excel工作表,并通过
ID
将其与旧的工作表合并,根据您的选择使用Thank@user1319128。当我使用您的代码时,得到的结果与您相同。我的代码/数据一定有问题。出于某种原因,我周末回来,现在它和你的一样工作!现在我有一个问题: