【Python】又一個Jupyter神器,操作Excel自動生成Python代碼!

大家好,我是東哥。
Jupyter對于表的處理真的是越來越方便了,很多庫可以直接實現(xiàn)可視化操作,無需寫代碼。但是這還不夠,最近看到一個神器叫Mito,它真的是做到了無需寫一行代碼,而且手動的操作可以自動轉換為代碼,供后續(xù)批量化操作,這簡直不要太爽。一、Mito是什么?
Mito是Jupyter notebook的一個插件,作用是編輯電子表格,并在編輯表格(帶格式轉換功能)時,可以生成相對應的Python代碼。
Mito和使用Excel表格沒什么太大區(qū)別,只需要掌握一些Mito的自定義函數(shù)即可,然后它會自動生成pandas處理表的代碼。二、Mito 安裝
Mito的安裝要求比較簡單,有兩個:
Python 3.6或更高版本 需要安裝了Node
打開終端,直接pip安裝:
pip install mitosheet然后,安裝JupyterLab擴展管理器。這個命令可能需要運行個幾分鐘:
jupyter labextension install @jupyter-widgets/jupyterlab-manager@2最后,啟動JupyterLab就完事了。
jupyter lab也可以用conda安裝到一個虛擬環(huán)境里。
三、Mito 操作方法
創(chuàng)建一個表
import mitosheet
mitosheet.sheet()導入數(shù)據(jù)
pandas讀入數(shù)據(jù)生成dataframe給mitosheet。如果不想寫代碼,也可以手動點導入按鈕導入數(shù)據(jù),導入數(shù)據(jù)代碼會自動生成。# 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一樣,一般的兩種方法。sum、sumif這種等等。公式法其實就是個孰能生巧的事。我看了下,Mito中的函數(shù)不復雜,使用很容易上手。Mito也提供了分析工具,比如合并、透視表、篩選、排序、保存分析等部分功能,都是點點點的操作。Mito的合并功能可用于將數(shù)據(jù)集水平組合在一起。通過查找兩個表關鍵列的匹配項,然后將這些匹配項數(shù)據(jù)組合到一行中。
數(shù)據(jù)透視表

篩選
過濾器是單個條件,對于該列中的每個單元格,其評估結果為true或false。 過濾器組是結合了布爾運算符的過濾器聚合。

排序

保存分析

四、后話
Mito的背后原理,這里不過多介紹,如果感興趣可以參考這篇博客:Mito的創(chuàng)作者是三位來自賓大的學霸 Aaron Diamond-Reivich、Jake Diamond-Reivich和Nate Rush,他們是在搞數(shù)據(jù)分析的時候,萌生了想要制作Mito的想法。往期精彩回顧
本站qq群851320808,加入微信群請掃碼:
評論
圖片
表情
