python中的存储文件:excel+fig

1. to_excel

在pandas中我们通常使用to_excel()方法将dataframe导出至Excel文件上,路径为必填参数,sheet_name为可选参数,当多个内容写到一张表中时,可以设置开始的行数startrow=13

需要注意的是startrow是从0开始的

data.to_excel('路径',sheet_name='')

2. pd.ExcelWriter

如果需要将多个不同的dataframe导出到同一个Excel文件的不同Sheet页,可以使用pandas.ExcelWriter()类来实现。

writer=pd.ExcelWriter('Logistic Performance Table{}.xlsx'.format(
time.ctime()).replace(':','-'))

1.将输出的数据导入到excel的sheet名为Model Summary的表中
model_summary().to_excel(writer,'Models Smmary') 

2. 将data存到第二张表test中
data.to_excel(writer,'test')

或者是

df1 = pd.DataFrame([["AAA", "BBB"]], columns=["Spam", "Egg"])  
df2 = pd.DataFrame([["ABC", "XYZ"]], columns=["Foo", "Bar"])  
with pd.ExcelWriter("path_to_file.xlsx") as writer:
    df1.to_excel(writer, sheet_name="Sheet1")  
    df2.to_excel(writer, sheet_name="Sheet2") 
  • 写入现有文件
    其中mode变成a,默认为w,a表示add即追加,engine表示为openpyxl
with pd.ExcelWriter("path_to_file.xlsx", mode="a", engine="openpyxl") as writer:
    df.to_excel(writer, sheet_name="Sheet3")  

3. 定制化输出Excel格式

参考m0_38011792

  • workbook=writer.book 创建工作簿
  • sheet=writer.sheets 创建工作表
    有了工作簿和表之后就可以对工作簿的格式进行设计,workbook的方法包括add_format()即增加样式,用字典的格式写入。主要包括
    • bg_color 背景颜色
    • font_color 字体颜色
    • align 水平对齐方式
    • bold(bool) 是否加粗
    • text_wrap 是否自动换行
    • fg_color 单元格背景颜色
    • border:number 单元格边框宽度
  • 修改格式
    • worksheet.set_columns(第几列,cell_format=列单元格格式)
    • worksheet.set_rows(第几行(0行即表头),cell_format=行单元格式)
workbook1 = writer.book
worksheets = writer.sheets
worksheet1 = worksheets['Sheet1']
format1 = workbook1.add_format({'bg_color': '#FFC7CE', 'font_color': '#9C0006'})
format2 = workbook1.add_format({'bold':  True, 'align': 'left', 'valign': 'top', 'text_wrap': True})

4. 向表中写入数据

  • sheet.write(row,col,data,[format])

    其实startrow可以直接设为1,因为它是从0开始的,因此我在第一行添加字符并不会受startrow=1的影响

writer=pd.ExcelWriter('pt_test-{}.xlsx'.format(time.ctime()).replace(':','-'))
pt.to_excel(writer,sheet_name='model_pt',startrow=2)
workbook=writer.book
sheet=writer.sheets['model_pt']
sheet.write('A1','Train_data:')
sheet.write('A12','Test_data:')
writer.close()

结果表示如下:注意添加的字符以及sheet的名称
在这里插入图片描述

5. 插入图片

对sheet进行图片的插入,方法为insert_image,参数包括
- row(int) 单元格所在的行,索引从0开始
- col 单元格所在列
- image 图片的路径、文件名
- options(dict) 图片的位置,缩放(x_scale y_scale),url参数,注意这里是以字典的形式写入的

sheet.insert_image(1,18,'.roc_train.png',{'x_scale':0.9,'y_scale':1})

其中后面的可选参数的参数为一下选项:
{
	'x_offset':0,'y_offset':0,
	'x_scale':1,'y_scale':1,
	'url':none
}

6. 存储图片

  • 图片.savefig(路径)
plot_roc(train,y_col).savefig('.roc_train.png')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值