有没有过这样的体验:在 Jupyter Notebook 或 Lab 里,面对一大堆 Pandas/Polars DataFrame,得不停地上下滚动、筛选,想找点数据都要翻半天?要是能像 Excel 那样随手点点排序、搜索、分页就爽了。so,今天给大家安利一个超简单、又强大的小工具——itables,让你的表格直接“动”起来!
什么是 itables?简单来说,itables 只是改了表格的渲染方式,不改你手里的数据流程。
- • 支持 Pandas、Polars DataFrame(记得装个 pyarrow)
- • 完全零侵入:两行代码开关,数据处理一毛钱关系都没有
- • 底层用的 datatables.net,开源 MIT
它解决了哪些痛点?
下面用表格对比下普通输出 vs itables:
安装&快速上手
- 1. 安装:
pip install itables# 或者conda install itables -c conda-forge
- 2. 让所有 DataFrame 互动起来:
import itablesitables.init_notebook_mode()
之后你只要写 df,就能看到可搜、可排序、可分页的表格了。
- 3. 如果只想单独嗨:
itables.init_notebook_mode(all_interactive=False)itables.show(df) # 只渲染这一张
- 4. 兼容环境:Jupyter Notebook / Lab、Google Colab、Kaggle、VS Code (Notebook & 交互式)、Quarto HTML、RISE、Streamlit、Dash、Shiny……
优缺点一目了然
使用小贴士
- • 想自定义前端样式?可以传入
options 参数,参考 datatables.net 文档 - • 在 nbconvert 导出 HTML 时,互动体验依旧在线
- • 如果你用的是 private network,需要手动 下载 JS/CSS 静态包[1]
总结itables 用最少的改动,给你的数据探索加了一个“超能力”——互动表格。不管是分析报表还是日常数据浏览,它都能让你省去 N 次 sort、filter 的尴尬。如果你和我一样,已经被千行以上的 DataFrame 折磨到想砸电脑,不妨一试,分分钟让表格活起来!
项目地址:https://github.com/mwouts/itables