社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

又一个 Jupyter 神器,操作 Excel 自动生成 Python 代码!

数据分析与开发 • 4 年前 • 503 次点击  

不得不说,Jupyter对于表的处理真的是越来越方便了,很多库可以直接实现可视化操作,无需写代码。但是这还不够,最近看到一个神器叫Mito,它真的是做到了无需写一行代码,而且手动的操作可以自动转换为代码,供后续批量化操作,这简直不要太爽。

一、Mito是什么?

MitoJupyter 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读入数据生成dataframemitosheet。如果不想写代码,也可以手动点导入按钮导入数据,导入数据代码会自动生成。
# 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.公式法: 如果对公式熟练,直接敲入函数即可,比如sumsumif这种等等。公式法其实就是个孰能生巧的事。我看了下,Mito中的函数不复杂,使用很容易上手。
2.分析工具: 如果不熟练函数,Mito也提供了分析工具,比如合并、透视表、筛选、排序、保存分析等部分功能,都是点点点的操作。
对于分析工具,给大家演示几种常见的数据处理操作,找找感觉。
合并数据集
Mito的合并功能可用于将数据集水平组合在一起。通过查找两个表关键列的匹配项,然后将这些匹配项数据组合到一行中。
首先,选择要合并在一起的两个Mito工作表。其次,选择合并的键。最后,选择保留哪些列。

数据透视表

首先,选择一个关键字对数据分组。然后,如果想进一步将组分层为单个单元格,继续选择列。最后,选择聚合的列和方法。

筛选

Mito通过组合过滤器和过滤器组来提供强大的过滤功能。
  • 过滤器是单个条件,对于该列中的每个单元格,其评估结果为true或false。
  • 过滤器组是结合了布尔运算符的过滤器聚合。

排序


保存分析

可以像保存宏一样保存分析。通过保存分析,可以保存应用于数据的转换,以便以后可以将其重新应用于新的数据集。

四、后话

对于Mito的背后原理,这里不过多介绍,如果感兴趣可以参考这篇博客:
https://trymito.io/blog/transpiler
Mito的创作者是三位来自宾大的学霸 Aaron Diamond-Reivich、Jake Diamond-Reivich和Nate Rush,他们是在搞数据分析的时候,萌生了想要制作Mito的想法。
据了解,目前这个软件还没有开源,他们还在思考如何支持维护这个项目,并转到开源路径上来。
参考:https://docs.trymito.io/

- EOF -


推荐阅读  点击标题可跳转

1、Linux 下如何实现 MySQL 数据库每天自动备份定时备份

2、再见 VBA!神器工具统一 Excel 和 Python

3、更高效的利用 Jupyter+pandas 进行数据分析,6 种常用数据格式效率对比!



看完本文有收获?请转发分享给更多人

推荐关注「数据分析与开发」,提升数据技能

点赞和在看就是最大的支持❤️

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/111859
 
503 次点击