Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.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 XlsxWriter从特定单元格开始写入数据帧_Python_Pandas_Xlsxwriter - Fatal编程技术网

Python XlsxWriter从特定单元格开始写入数据帧

Python XlsxWriter从特定单元格开始写入数据帧,python,pandas,xlsxwriter,Python,Pandas,Xlsxwriter,我正在使用xlsxwriter创建一个Excel文件。目前,我正在做这样的事情: import datetime import pandas as pd import xlsxwriter workbook = xlsxwriter.Workbook('Test.xlsx') worksheet = workbook.add_worksheet() datetime_format = workbook.add_format({ 'font_size': 12 }) worksheet

我正在使用xlsxwriter创建一个Excel文件。目前,我正在做这样的事情:

import datetime
import pandas as pd
import xlsxwriter

workbook = xlsxwriter.Workbook('Test.xlsx')
worksheet = workbook.add_worksheet()

datetime_format = workbook.add_format({
    'font_size': 12
})
worksheet.write('C2', datetime.datetime.now().strftime("%Y-%m-%d %H:%M"), datetime_format)

# Rest removed for brevity. I simply have many stuff that 
# I manually write to make the design as I want.

workbook.close()

writer = pd.ExcelWriter('Test.xlsx', engine='xlsxwriter')
result.to_excel(writer, startrow=6, startcol=3) # Start from D7.
writer.save()

现在,这似乎重写了我以前使用xlsxwriter手动编写的所有内容。另外,我注意到xlsxwriter默认情况下不支持写入数据帧,对吗?如何将xlsxwriter和pandas结合起来,手动编写一些用于Excel工作表的内容,然后在以后从特定单元格开始编写所有数据框内容?

您需要改变工作方式。我还建议阅读关于如何与熊猫一起使用的指南

writer = pd.ExcelWriter('Test.xlsx', engine='xlsxwriter')

workbook = writer.book

result.to_excel(writer, sheet_name='Sheet1', index=False, startrow=6, startcol=3) # Start from D7.

worksheet = writer.sheets['Sheet1']

datetime_format = workbook.add_format({
    'font_size': 12
})
worksheet.write('C2', datetime.datetime.now().strftime("%Y-%m-%d %H:%M"), datetime_format)

writer.save()
首先,我们使用pd.ExcelWriter和传递xlswriter作为引擎来创建writer对象。一旦有了writer,我们就可以使用.book类vriable访问工作簿。此时,我们可以使用df.to_excel将数据写入工作簿。我们将使用to_excel的sheet_name参数来创建工作表并为其命名。此时,我们可以使用.sheets类变量访问我们的工作表,并将sheetname作为键传递——在我们的示例中是Sheet1

从那里,您可以在使用或不使用pandas对象的情况下将其他值写入工作表,如下面的代码所示