小编典典

将字符串/文本和熊猫数据框写入Excel

python

我想将一些文本和数据框保存到这样的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)

有更容易的方法吗?


阅读 190

收藏
2021-01-20

共1个答案

小编典典

您需要writewrite_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()

注意:
writewrite_string实际上是xlsxwriter包函数。要使用它们,必须安装该软件包并pd.ExcelWriter必须使用xlsxwriter引擎对其进行初始化(在pandas
1.0.5中,它默认为io.excel。 .writer引擎)。

2021-01-20