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


    不得不说,Jupyter对于表的处理真的是越来越方便了,很多库可以直接实现可视化操作,无需写代码。

    但是这还不够,最近看到一个神器叫Mito,它真的是做到了无需写一行代码,而且手动的操作可以自动转换为代码,供后续批量化操作,这简直不要太爽。喜欢记得收藏、点赞、关注。

    注:完整资料、代码、技术沟通,文末获取

    一、Mito是什么?

    MitoJupyter notebook的一个插件,作用是编辑电子表格,并在编辑表格(带格式转换功能)时,可以生成相对应的Python代码。

    下面是具体的操作演示,感受一下它的强大!

    图片

    使用Mito和使用Excel表格没什么太大区别,只需要掌握一些Mito的自定义函数即可,然后它会自动生成pandas处理表的代码。

    二、Mito 安装

    Mito的安装要求比较简单,有两个:

    • Python 3.6或更高版本

    • 需要安装了Node

    打开终端,直接pip安装:

    pip install mitosheet
    
    • 1

    然后,安装JupyterLab扩展管理器。这个命令可能需要运行个几分钟:

    jupyter labextension install @jupyter-widgets/jupyterlab-manager@2
    
    • 1

    最后,启动JupyterLab就完事了。

    jupyter lab
    
    • 1

    也可以用conda安装到一个虚拟环境里。

    三、Mito 操作方法

    创建一个表

    import mitosheet
    mitosheet.sheet()
    
    • 1
    • 2

    导入数据

    可以使用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)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    操作方法

    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/

    推荐文章

    技术交流

    完整代码、数据获取,可以找我来要

    目前开通了技术交流群,群友已超过3000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

    • 方式①、发送如下图片至微信,长按识别,后台回复:加群;
    • 方式②、添加微信号:dkl88191,备注:来自CSDN
    • 方式③、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

    在这里插入图片描述

    技术交流、求职内推、干货汇总、与 3000+来自阿里、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~

  • 相关阅读:
    tinyxml2开源库使用
    量子计算实现:量子算法的实现
    IDM安装教程
    10-2 Prometheus本地存储机制,单机远端存储
    关于反向竞价的6个常见误解,采购一定要知道
    花了100块大洋搞懂 ipv6的用户如何访问ipv4 服务器
    “蔚来杯“2022牛客暑期多校训练营9 F题: Matrix and GCD
    小景的工具使用--Java诊断工具Arthas的使用说明
    基于C++和QT实现的房贷计算器设计
    基于FPGA的交通信号灯设计
  • 原文地址:https://blog.csdn.net/qq_34160248/article/details/124942434