還在手動導入 pandas?你太 out 了

還在手動導入 pandas?你太 out 了

在用 Python 或 Juptyer 做數據分析時,我們一般都會在代碼頂部導入很多流行的三方庫,比如 pandas、numpy、matplotlib 等等。但是其實每次導入的庫都是類似的,有沒有更加”偷懶“的實現方式呢?

最近在 Github 上發現了一個第三方庫,就是專門針對這種場景設計的,在這裡推薦給大家。

pyforest

pyforest 是一家德國初創公司開源的,安裝之後只要導入 pyforest,就可以直接在代碼中引用所有主流的數據分析庫。如果你也用 Jupyter 或者 Jupyterlab 的話,可以不需要顯示的導入 pyforest。

还在手动导入 pandas?你太 out 了

你不用擔心在代碼中導入太多實際沒有用到的庫,因為 pyforest 會自動根據你的使用情況,進行導入。如果是沒有用到的庫,是不會引入到代碼中的。

使用示例

在 shell 中使用時,需要顯示的導入 pyforest:

<code>from pyforest import *
/<code>
还在手动导入 pandas?你太 out 了

上面有提到 Jupyter 環境下,我們可以直接開始數據處理操作了:

还在手动导入 pandas?你太 out 了

調試完代碼後,可以通過 <code>active_imports/<code>函數將所有導入的庫的信息導出。

支持哪些庫

據庫作者介紹,pyforest 的目標是支持導入日常工作中用到的所有流行的數據分析庫,例如 pandas、numpy、seaborn、matplotlib,還有 sklearn 中的 OneHotEncoder,以及 os、re、tqdm 等輔助庫。

如果想查看當前所有支持導入的三方庫,可以輸入<code>lazy_imports/<code>函數了解。

假如你日常使用的庫不在上述列表中,那麼你還可以提 PR 或者直接修改 pyforest 中的 <code>_imports.py/<code>進行添加。

还在手动导入 pandas?你太 out 了

只需要先安裝指定的庫,然後按照如下示例進行調整即可:

<code>bokeh = LazyImport("import bokeh")
/<code>

如何安裝

通過 pip 或 conda 均可安裝:

<code>pip install pyforest
conda install pyforest
/<code>

但是該庫要求 Python 版本為 3.6+,主要是因為大量用到了 3.6 之後才支持的 f-string。

項目地址:https://github.com/8080labs/pyforest


分享到:


相關文章: