编写excel文件,Python中的.xlsx格式

编写excel文件,Python中的.xlsx格式,python,pandas,xlsx,xlsxwriter,Python,Pandas,Xlsx,Xlsxwriter,我从一个大数据框架开始,在做了一些数据挖掘工作之后,我需要将它简化为一个包含两张图纸的文件,然后在。。。 这个问题涉及写作部分,如果我使用: #write the files: # first file: # Specify a writer writer = pd.ExcelWriter('example1.xlsx', engine='xlsxwriter') # Write your DataFrame to a file df11.to_excel(writer, 'She

我从一个大数据框架开始,在做了一些数据挖掘工作之后,我需要将它简化为一个包含两张图纸的文件,然后在。。。 这个问题涉及写作部分,如果我使用:

#write the files:

# first file:
# Specify a writer
writer = pd.ExcelWriter('example1.xlsx', engine='xlsxwriter')

# Write your DataFrame to a file     
df11.to_excel(writer, 'Sheet1')
df12.to_excel(writer, 'Sheet2')
# Save the result 
writer.save()
我为所有列分配了相同的维度,即使它们是由数字或文本组成的。出于某种原因,我从上一个文件中得到了另一个列,其中的行nr,尽管事实上,如果我在Rodeo中可视化文件,看起来很好

写入前请先删除文件:

写入后的文件:


欢迎提出任何想法。

pandas
不会为您设置列宽(或样式)。但是,它确实提供了通过访问。要设置列的宽度,可以执行以下操作:

代码: 测试代码: 结果:

无法复制行号。您能发布一个吗?我理解为什么在您的示例中,列维度只适用于表2,首先它没有B列。对吗?但是为什么在我的例子中是一样的,我在两张表中都有完全相同的列,但是更改只应用于第二张表。为什么?我错过了什么?我指的是在写作前后相同数据帧的差异,这可以在第一篇文章中看到。为什么第一栏在写完后出现,我该如何改变?和平!建议您按照示例中的链接查看xlsxwriter文档。但是您会注意到,set column方法应用于工作表,而不是工作簿。示例中选择的工作表是
[1]
,这是第二张工作表(以零为基础)。此外,这些列是基于xlswriter(excel)的,列是
B
(第二列)。是的,也许我从一开始就应该这样做……感谢支持我通过将宽度设置为0,删除了第一列(我在写作后得到的A列,传入图像可以在第一篇文章中看到)。我仍然不明白为什么我得到了那个专栏,我没有时间去寻找一个更优雅的解决方案。。。和平!
# make wide column wide
workbook = writer.book
worksheet = workbook.worksheets()[1]
worksheet.set_column('B:B', 24)
# Specify a writer
writer = pd.ExcelWriter('example1.xlsx', engine='xlsxwriter')

df1 = pd.DataFrame([1], columns=['A'])
df2 = pd.DataFrame(['My data'], columns=['This is a very wide column'])

# Write your DataFrame to a file
df1.to_excel(writer, 'Sheet1')
df2.to_excel(writer, 'Sheet2')

# make wide column wide
workbook = writer.book
worksheet = workbook.worksheets()[1]
worksheet.set_column('B:B', 24)

# Save the result
writer.save()