今天分享一个pandas数据导出到excel的小小经验 。默认你已经学会了怎么初始化数据到pandas中 。这里只分享导出 。
导出到文件中
# file_path 需要保存的文件路径# table pandas DataFrame对象writer = pd.ExcelWriter(file_path)# 初始化一个writertable.to_excel(writer, float_format='%.5f')# table输出为excel, 传入writerwriter.save()# 保存
注意的点: ①pandas行号默认从0开始 , 可以通过下列语句解决
table.index += 1 ②如果不需要行号 , 可以通过下列语句解决
df.to_excel(writer, index=False) 【pandas 数据导出为excel】③如果需要导出给用户 , 通常需要修改列名 , 可以通过下列语句解决
columns_mapp = { "source_column": "target_column" }# 字典 , 键为原始列名 , 值为目标列名new_table = table.rename(columns=columns_mapp)# 不修改原始table , 返回新的数据帧table.rename(columns=columns_mapp, inplace=True)# 直接修改原table ④如果需要返回到前端 , 不需要落盘(谨慎内存使用) , 可以直接保存到IO
# 准备写入到IO中# name excel文件名output = BytesIO()# 创建一个IO流对象writer = pd.ExcelWriter(output)#初始化一个writer , 传入这个IO对象table.to_excel(writer, name, encoding='utf-8')# table输出到writer中output.seek(0)# 重新定位到开始writer.save()# 将Excel文件内容保存到IO中# 返回前端response = HttpResponse(content_type='text/csv')response.write(codecs.BOM_UTF8)file_name = urlquote(file_name)# 使用urlquote()方法解决中文无法使用的问题response.content = output.getvalue()# 直接从IO中获取数据response['Content-Disposition'] = 'attachment; filename=%s' % file_namereturn response
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
