to_excel方法
存储函数为pd.DataFrame.to_excel(),注意,必须是DataFrame写入excel, 即Write DataFrame to an excel sheet。其具体参数如下:
定义:
DataFrame.to_excel(excel_writer, sheet_name='Sheet1', na_rep='',
float_format=None, columns=None, header=True, index=True,
index_label=None, startrow=0, startcol=0, engine=None,
merge_cells=True, encoding=None, inf_rep='inf', verbose=True,
freeze_panes=None)
常用参数解析
- excel_writer : string or ExcelWriter object File path or existing ExcelWriter目标路径
- sheet_name : string, default ‘Sheet1' Name of sheet which will contain DataFrame,填充excel的第几页
- na_rep : string, default ”,Missing data representation 缺失值填充
- float_format : 字符串,默认None,格式化浮点数的字符串
- columns : sequence, optional,Columns to write 选择输出的的列。
- header : 布尔或字符串列表,默认为Ture。写出列名。如果给定字符串列表,则假定它是列名称的别名
- index : boolean, default True,Write row names (index) 索引(False表示不写入)
- index_label : 如果需要,可以使用索引列的列标签。如果没有给出,标题和索引为true,则使用索引名称。如果数据文件使用多索引,则需使用序列。
- startrow :左上角的单元格行来转储数据框
- startcol :左上角的单元格列转储数据帧
- engine : 字符串,默认没有使用写引擎 - 您也可以通过选项io.excel.xlsx.writer,io.excel.xls.writer和io.excel.xlsm.writer进行设置。
- merge_cells : 布尔,默认为Ture,编码生成的excel文件。 只有xlwt需要,其他编写者本地支持unicode。
- encoding: string, default None encoding of the resulting excel file. Only necessary for xlwt,other writers support unicode natively.
- inf_rep : 字符串,默认“正”。无穷大的表示(在Excel中不存在无穷大的本地表示)
- freeze_panes :整数的元组(长度2),默认为None。指定要冻结的基于1的最底部行和最右边的列
我的写入格式如下图:
解决方法:
应为在excel写入的时候,默认数值类型超过一定大小就会被科学计数,所以在写入的时候需要转化为字符串的类型写入就ok啦。
DataFrame['列名1'] = DataFrame['列名1'].astype(str)
然后执行
DataFrame.to_excel("文件存放路径/文件名称.excel",index=False)
例如我的存放路径为:
grouped.to_excel("d:/user/jupyter_file/数据筛选(2000条).xlsx",index=False)
其中index为列索引从1开始,如果需要设置True即可。