直接保存“DataFrame表格”到本地,这个“骚操作”90%以上的人不知道!
知识是需要积累的,有些冷知识、骚操作,你可能现在不需要,但是只有当你玩儿过,以后再碰到这个需求,你才会有印象,方便查询。
引入问题
其实,这个知识点也是在群里面遇到了,如果当时问我,我也会很蒙逼。因此,我做了一个简单的学习,并将其整理后,供大家学习和参考。
比如说:我们得到了一个df_new表格,我们想要将其保存在本地,应该怎么办呢?保存图片,你可能用的多。但是保存这个表格,你估计就不一定知道了。
为什么需要将df_new保存在本地呢?其实提问者是为了将表格保存在本地,后面需要完成自动化群发消息的操作,这样一来,你不仅仅可以发图片,现在还可以发表格了,是不是很舒服?
那么,这样一个操作,应该怎么完成呢?下面我为大家慢慢讲述。
方法介绍
完成这个需求使用的是dataframe_image库,因此在使用他之前,需要我们先安装这个库。
pip install dataframe_image
然后在使用之前,还需要导入这个库。
import dataframe_image as dfi
接着,调用dfi中的export()方法,就可以实现这个需求。但是关于这个知识点,你在百度上面其实看不到任何解答,那么你应该怎么学习呢?我们以jupyter notebook为例,进行说明。
直接在单元格中输入??dfi.export,然后运行,即可出现详细帮助文档。
详细参数如下:
dfi.export(obj, filename, fontsize=14, max_rows=None, max_cols=None, table_conversion='chrome', chrome_path=None)
-
obj:表示的是待保存的DataFrame数据框; -
filename:表示的是图片保存的本地路径; -
fontsize:表示的是待保存图片中字体大小,默认是14; -
max_rows:表示的是DataFrame输出的最大行数。这个数字被传递给DataFrame的to_html方法。为防止意外创建具有大量行的图像,具有100行以上的DataFrame将引发错误。显式设置此参数以覆盖此错误,对所有行使用-1。 -
max_cols:表示的是DataFrame输出的最大列数。这个数字被传递给DataFrame的to_html方法。为防止意外创建具有大量列的图像,包含30列以上的DataFrame将引发错误。显式设置此参数以覆盖此错误,对所有列使用-1。 -
table_conversion:'chrome'或'matplotlib',默认为'chrome'。DataFrames将通过Chrome或matplotlib转换为png。除非无法正常使用,否则请使用chrome。matplotlib提供了一个不错的选择。
可以看到:这个方法其实就是通过chrome浏览器,将这个DataFrames转换为png或jpg格式。
举例说明
我们先随意构造或读取一个DataFrame。
import pandas as pd
df = pd.read_excel("chaifen.xlsx")
df_new = df.iloc[:5,:]
df_new
结果如下:
通过上面的学习,保存这个DataFrame,只需要两行代码。
import dataframe_image as dfi
dfi.export(obj=df_new,filename='df_new.jpg')
打开本地目录,查看这张图片。
可以看到,上述图片中的字体超级小,然后我们还可以使用fontsize参数,设置字体大小。
import dataframe_image as dfi
dfi.export(obj=df_new,filename='df_new_1.jpg',fontsize=30)
再次打开本地目录,查看这张图片。
该知识点就说到这里,关于其他的参数,大家可以自行下去尝试。
本文分享自微信公众号 - 数据分析与统计学之美(gh_21c25c7e71d0)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Windows10系统下Hadoop和Hive开发环境搭建填坑指南
前提 笔者目前需要搭建数据平台,发现了Windows系统下,Hadoop和Hive等组件的安装和运行存在大量的坑,而本着有坑必填的目标,笔者还是花了几个晚上的下班时候在多个互联网参考资料的帮助下完成了Windows10系统下Hadoop和Hive开发环境的搭建。这篇文章记录了整个搭建过程中的具体步骤、遇到的问题和对应的解决方案。 环境准备 ❝ 基于笔者的软件版本洁癖,所有选用的组件都会使用当前(2020-10-30)最高的版本。 ❞ 软件 版本 备注 Windows 10 操作系统 JDK 8 暂时不要选用大于等于JDK9的版本,因为启动虚拟机会发生未知异常 MySQL 8.x 用于管理Hive的元数据 Apache Hadoop 3.3.0 - Apache Hive 3.1.2 - Apache Hive src 1.2.2 因为只有1.x版本的Hive源码提供了.bat启动脚本,有能力可以自己写脚本就不用下此源码包 winutils hadoop-3.3.0 Hadoop的Windows系统下的启动依赖 下面列举部分组件对应的下载地址: Apache Hadoop 3.3.0: ...
- 下一篇
用 Mars Remote API 轻松分布式执行 Python 函数
Mars 是一个并行和分布式 Python 框架,能轻松把单机大家耳熟能详的的 numpy、pandas、scikit-learn 等库,以及 Python 函数利用多核或者多机加速。这其中,并行和分布式 Python 函数主要利用 Mars Remote API。 启动 Mars 分布式环境可以参考: 命令行方式在集群中部署。 Kubernetes 中部署。 MaxCompute 开箱即用的环境,购买了 MaxCompute 服务的可以直接使用。 如何使用 Mars Remote API 使用 Mars Remote API 非常简单,只需要对原有的代码做少许改动,就可以分布式执行。 拿用蒙特卡洛方法计算 π 为例。代码如下,我们编写了两个函数,calc_chunk用来计算每个分片内落在圆内的点的个数,calc_pi用来把多个分片calc_chunk计算的结果汇总最后得出 π 值。 from typing import List import numpy as np def calc_chunk(n: int, i: int): # 计算n个随机点(x和y轴落在-1到1之间...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS6,CentOS7官方镜像安装Oracle11G
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7