我想将一些文本和数据框保存到这样的excel文件中:
因此,我有以下变量:
text1 = "some text here" text2 = "other text here" df = pd.DataFrame({"a": [1,2,3,4,5], "b": [6,7,8,9,10], "c": [11,12,13,14,15]})
正如我已经发现的那样,可以使用xlsxwriter进行此操作,这意味着我基本上必须遍历整个数据帧,以将每个条目写入excel工作簿中的不同单元格。这很麻烦。
因此,我认为必须有一种更简单的方法来执行此操作;像这样的东西:
writer = pd.ExcelWriter("test.xlsx", engine="xlsxwriter") writer.write(text1, startrow=0, startcol=0) writer.write(text1, startrow=1, startcol=0) df.to_excel(writer, startrow=4, startcol=0)
有更容易的方法吗?
您需要write或write_string:
write
write_string
text1 = "some text here" text2 = "other text here" df = pd.DataFrame({"a": [1,2,3,4,5], "b": [6,7,8,9,10], "c": [11,12,13,14,15]}) writer = pd.ExcelWriter("test.xlsx", engine="xlsxwriter") df.to_excel(writer, startrow=4, startcol=0) worksheet = writer.sheets['Sheet1'] worksheet.write(0, 0, text1) worksheet.write(1, 0, text2) #another solution #worksheet.write_string(0, 0, text1) #worksheet.write_string(1, 0, text2) writer.save()
注意: write和write_string实际上是xlsxwriter包函数。要使用它们,必须安装该软件包并pd.ExcelWriter必须使用xlsxwriter引擎对其进行初始化(在pandas 1.0.5中,它默认为io.excel。 .writer引擎)。
xlsxwriter
pd.ExcelWriter