又一神器登场!点点鼠标操作 Excel 就能自动生成 pandas 代码?
Posted 程序员启航
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了又一神器登场!点点鼠标操作 Excel 就能自动生成 pandas 代码?相关的知识,希望对你有一定的参考价值。
Jupyter
对于表的处理虽然已经很方便了,但是这还不够,最近看到一个神器叫Mito
,它真的是做到了无需写一行代码,而且手动的操作可以自动转换为代码,供后续批量化操作,这简直不要太爽。
一、Mito是什么?
Mito
是Jupyter notebook
的一个插件,作用是编辑电子表格,并在编辑表格(带格式转换功能)时,可以生成相对应的Python
代码。
下面是具体的操作演示,感受一下它的强大!
使用Mito
和使用Excel
表格没什么太大区别,只需要掌握一些Mito
的自定义函数即可,然后它会自动生成pandas
处理表的代码。
二、Mito 安装
Mito
的安装要求比较简单,有两个:
-
Python 3.6或更高版本
-
需要安装了Node
打开终端,直接pip安装:
pip install mitosheet
然后,安装JupyterLab
扩展管理器。这个命令可能需要运行个几分钟:
jupyter labextension install @jupyter-widgets/jupyterlab-manager@2
最后,启动JupyterLab
就完事了。
jupyter lab
也可以用conda
安装到一个虚拟环境里。
三、Mito 操作方法
创建一个表
import mitosheet
mitosheet.sheet()
导入数据
可以使用pandas
读入数据生成dataframe
给mitosheet
。如果不想写代码,也可以手动点导入按钮导入数据,导入数据代码会自动生成。
# import Python packages
import mitosheet
import pandas as pd
# Create a simple dataframe to display
car_data = pd.DataFrame({'car': ['Toyota', 'Nissan', 'Honda', 'Mini Cooper', 'Saturn'], 'mph': [60, 50, 60, 75, 90], 'length': [10, 12, 13, 8, 9]})
# render the Mitosheet with car_data
mitosheet.sheet(car_data)
操作方法
和Excel
一样,一般的两种方法。
1.公式法: 如果对公式熟练,直接敲入函数即可,比如sum
、sumif
这种等等。公式法其实就是个孰能生巧的事。我看了下,Mito
中的函数不复杂,使用很容易上手。
2.分析工具: 如果不熟练函数,Mito
也提供了分析工具,比如合并、透视表、筛选、排序、保存分析等部分功能,都是点点点的操作。
对于分析工具,给大家演示几种常见的数据处理操作,找找感觉。
合并数据集
Mito
的合并功能可用于将数据集水平组合在一起。通过查找两个表关键列的匹配项,然后将这些匹配项数据组合到一行中。
首先,选择要合并在一起的两个Mito工作表。其次,选择合并的键。最后,选择保留哪些列。
数据透视表
首先,选择一个关键字对数据分组。然后,如果想进一步将组分层为单个单元格,继续选择列。最后,选择聚合的列和方法。
筛选
Mito通过组合过滤器和过滤器组来提供强大的过滤功能。
-
过滤器是单个条件,对于该列中的每个单元格,其评估结果为true或false。
-
过滤器组是结合了布尔运算符的过滤器聚合。
排序
保存分析
可以像保存宏一样保存分析。通过保存分析,可以保存应用于数据的转换,以便以后可以将其重新应用于新的数据集。
四、后话
对于Mito
的背后原理,这里不过多介绍,如果感兴趣可以参考这篇博客:
https://trymito.io/blog/transpiler
Mito
的创作者是三位来自宾大的学霸 Aaron Diamond-Reivich、Jake Diamond-Reivich和Nate Rush,他们是在搞数据分析的时候,萌生了想要制作Mito
的想法。
据了解,目前这个软件还没有开源,他们还在思考如何支持维护这个项目,并转到开源路径上来。
文章到这里就结束了,感谢你的观看
说实在的,每次在后台看到一些读者的回应都觉得很欣慰,我想把我收藏的一些编程干货贡献给大家,回馈每一个读者,希望能帮到你们。
干货主要有:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python所有知识点汇总(可以弄清楚Python的所有方向和技术)
*如果你用得到的话可以直接拿走,在我的QQ技术交流群里,可以自助拿走,群号是857113825。*
以上是关于又一神器登场!点点鼠标操作 Excel 就能自动生成 pandas 代码?的主要内容,如果未能解决你的问题,请参考以下文章