terminate.jpg

首页

技术分享

Entries for 标记时间 "四月 2022"

dataframe 写入excel时一处index列

image (1).png

pandas在把dataframe 写入excel或其他格式文件时,默认会把dataframe里的index也写入,但是通常是不需要这一列的。

google到的解决方法基本上是从dataframe上想办法,就是用reset_index和set_index来把index列转移到数据本身的第一列上,这样虽然也能解决,但是如果第一列的数据有重复的值会发生什么我也没试过,不放心,所以只能想其他办法。

从流(stream)里下载数据

2021-10-16 11-59-19 的屏幕截图.png

下面的代码从一个简单的只有flask和pandas以及其依赖包的环境中可以运行

想要让下载文件在服务器不落地,直接从数据库获取数据,写入流,最后通过flask的send_file函数来下载,见以下步骤

  • 创建一个dataframe
  • 创建一个bytesIO
  • 创建一个ExcelWriter(或其他数据)
  • 将数据写入流(BytesIO)
  • 保存数据
  • 把流的指针指向0
  • 下载流数据