使用 StyleFrame 的 to_excel 方法将多个 python 数据帧复制到 excel
Copying multiple python dataframes into excel using StyleFrame's to_excel method
我有多个数据框,df1、df2 等。每个数据框包含不同数量的列和行。使用 StyleFrame 库,是否可以通过指定单元格位置使用 to_excel 方法将所有数据帧一个一个地复制到 excel 文件中的单个 sheet 中?目前,我正在做的是:
将 df1 写入 excel 文件的 Sheet1
writer = StyleFrame.ExcelWriter("filename")
sf1 = StyleFrame(df1)
#Perform formatting using apply_column_style, apply_headers_style etc.
sf1.to_excel(writer, sheet_name='Sheet1')
将 df2 写入 excel 文件的 Sheet1
writer = StyleFrame.ExcelWriter("filename")
sf2 = StyleFrame(df2)
#Perform formatting using apply_column_style, apply_headers_style etc.
sf2.to_excel(writer, sheet_name='Sheet1') #Incorrectly overwrites df1 data in the excel
writer.save()
writer.close()
但是,sf2.to_excel() 方法会覆盖 excel 中的 df1 数据。我正在寻找的是从单元格位置开始复制 df1 数据,比如 "A2",在 Sheet1 中,然后复制 sf2 数据从单元格位置开始,比如 "B31",在同一个 sheet 中等等.
是的。就像 pandas.to_excel
支持 startrow
和 startcol
参数一样,StyleFrame.to_excel
也是如此。
API 与 pandas
几乎相同:
您需要创建一个 excel_writer
对象,在两个样式框架上调用 to_excel
,然后调用 excel_writer.save
:
from StyleFrame import StyleFrame, Styler
sf1 = StyleFrame({'a': [1]}, Styler(bg_color='yellow'))
sf2 = StyleFrame({'b': [1]}, Styler(bg_color='blue'))
excel_writer = StyleFrame.ExcelWriter('test.xlsx')
sf1.to_excel(excel_writer)
sf2.to_excel(excel_writer, startcol=3, startrow=2) # both are zero-based
excel_writer.save()
产出
我有多个数据框,df1、df2 等。每个数据框包含不同数量的列和行。使用 StyleFrame 库,是否可以通过指定单元格位置使用 to_excel 方法将所有数据帧一个一个地复制到 excel 文件中的单个 sheet 中?目前,我正在做的是:
将 df1 写入 excel 文件的 Sheet1
writer = StyleFrame.ExcelWriter("filename")
sf1 = StyleFrame(df1)
#Perform formatting using apply_column_style, apply_headers_style etc.
sf1.to_excel(writer, sheet_name='Sheet1')
将 df2 写入 excel 文件的 Sheet1
writer = StyleFrame.ExcelWriter("filename")
sf2 = StyleFrame(df2)
#Perform formatting using apply_column_style, apply_headers_style etc.
sf2.to_excel(writer, sheet_name='Sheet1') #Incorrectly overwrites df1 data in the excel
writer.save()
writer.close()
但是,sf2.to_excel() 方法会覆盖 excel 中的 df1 数据。我正在寻找的是从单元格位置开始复制 df1 数据,比如 "A2",在 Sheet1 中,然后复制 sf2 数据从单元格位置开始,比如 "B31",在同一个 sheet 中等等.
是的。就像 pandas.to_excel
支持 startrow
和 startcol
参数一样,StyleFrame.to_excel
也是如此。
API 与 pandas
几乎相同:
您需要创建一个 excel_writer
对象,在两个样式框架上调用 to_excel
,然后调用 excel_writer.save
:
from StyleFrame import StyleFrame, Styler
sf1 = StyleFrame({'a': [1]}, Styler(bg_color='yellow'))
sf2 = StyleFrame({'b': [1]}, Styler(bg_color='blue'))
excel_writer = StyleFrame.ExcelWriter('test.xlsx')
sf1.to_excel(excel_writer)
sf2.to_excel(excel_writer, startcol=3, startrow=2) # both are zero-based
excel_writer.save()
产出