2

再见 Jupyter Notebook, DataSpell 起飞!

 1 year ago
source link: https://www.51cto.com/article/722647.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

再见 Jupyter Notebook, DataSpell 起飞!

作者:云朵君 2022-11-14 11:52:34
归根结底,永远留在我们身边的不是工具,而是我们通过使用最适合我们需求的工具获得的知识。你会不会从 JupyterLab 或 Jupyter Notebook 切换到Dataspell呢?

如果 JupyterLab 和 PyCharm 有一个孩子,那么他一定是DataSpell,一个面向专业数据科学家的专业 IDE。

虽然 Pycharm 这样的 IDE 非常强大,但它并不适用于数据科学,因此大部分数据科学家都会选择使用富有交互性的  JupyterLab 或 Jupyter Notebook 作为常用 IDE。但在调试完整项目时又不得不切换回具有专业环境的PyCharm。

这样属实有点麻烦,直到我发现了 DataSpell。

什么是DataSpell?

Dataspell是专为数据科学家打造的集成开发环境(IDE)。它由Jetbrains(IntelliJ Idea 和 PyCharm 背后的公司)开发,因此无需进一步介绍。

DataSpell 具有我们期望从 Jupyter 中获得的一些典型功能,例如命令模式、编辑器模式、单元格导航、笔记本快捷方式和交互式输出。

也就是说,对于专业数据科学家来说,这是一个更强大的专业 IDE。这就是为什么我更喜欢 DataSpell 而不是 Jupyter Notebook(和 Pycharm)的原因之一了。

以下是 IDE 提供的内容:

  • 原生笔记本体验——如果你使用过 Jupyter,将会有宾至如归的感觉。
  • 智能编码辅助——就像 Jupyter 和 PyCharm 生了一个孩子一样。
  • Markdown 和 JavaScript — 根据需要设置笔记本的样式并嵌入数据可视化。
  • 交互式 shell — REPL 控制台 + 语法检查。

SQL 数据库支持——连接到数据库、直观地检查数据、导入/导出数据等。

图片

如果你使用过PyCharm,那么这个外观和感觉都会很熟悉。

创建第一个Notebook

该过程几乎与任何其他 Jetbrains 产品相同。单击根目录并转到New — Jupyter Notebook

图片

并命名为 first_notebook.ipynb

图片

创建笔记本时,可能已经看到创建 R 脚本和Julia文件的选项。其实Dataspell 不仅支持Python ,还同时支持 R 和 Julia。

使用基本的 Python 数据科学库测试

Numpy 数组和 Pandas DataFrame

图片

与 DataFrame 的良好交互性

当将 DataFrame 显示为输出时,与其他 Notebook 编辑器不同,当 DataFrame 很大时,DataSpell 可以显示整个 DataFrame 而不会屏蔽某些数据。当 DataFrame 较大时,DataSpell 会自动添加一个滚动条,让你可以滚动查看整个数据集。

同时,可以通过单击列名轻松对数据进行排序,这将使用该列按升序或降序对 DataFrame 进行排序(如果单击两次)。

如果要在单个框架中查看更多数据,可以选择在单独的选项卡中打开 DataFrame。

图片

Matplotlib 绘图

图片

出色的智能编码辅助

Jupyter Notebook 的一个缺点是它的编码辅助,虽然可以打开扩展 “hinterland”启用自动补全,但效果不佳。

如果按下“tab”按钮,它有时会再次写入整个变量名称,而不是仅完成名称的其余部分,有时甚至会自动完成单词,甚至无须按 Enter。

DataSpell 的编码辅助与 Pycharm 的一样智能,有智能代码完成、错误检查和更多可用的东西。

图片
图片

Markdown 支持

除此之外,DataSpell 还支持 Markdown,这意味着我们的脚本仍将具有带有 h1、h2、h3 标题、纯文本、编号列表、项目符号等的“笔记本风格”(虽然尚不支持 LaTeX语法) 。将鼠标悬停在一个单元格上方,然后单击Add Markdown Cell:

图片

另一种方法是单击code下拉菜单并将单元格类型切换为 Markdown。

这里有一些 Markdown 代码供尝试:

图片

这是运行单元格时的外观:

图片

出色的可视化输出

Jupyter Notebook 的一项很酷的功能是无需任何额外安装即可输出可视化效果。而 Pycharm 则不然,但 DataSpell 可以与Jupyter媲美!

只需要打开.ipynb包含创建可视化的代码的文件,你会发现所有可视化都会漂漂亮亮地显示出来。

图片

甚至支持交互式可视化

你猜怎么着?Dataspell 与 Plotly、Bokeh、Altair 和 ipywidgets 等交互式可视化库配合得很好。

如下交互式可视化效果:

图片

Pycharm 等完整 IDE 的一些很酷的特性(而 Jupyter Notebook 缺乏)是版本控制、轻松的终端访问和数据库集成。

版本控制帮助我们跟踪和管理对软件代码的更改。你可能用来管理源代码更改的流行版本控制系统是 Github。

使用 DataSpell,你可以克隆 Git 项目、提交和推送更改、使用分支等等!

图片

DataSpell 有一个内置终端,支持操作系统上可用的命令。终端在你的脚本下方可用,因此无需打开第二个窗口来再次使用终端!

图片

虚拟环境管理

当您使用 Python 一段时间后,你应该已经意识到为每个项目设置虚拟环境的重要性。DataSpell 通过提供设置页面,可以轻松为任何数据科学项目配置虚拟环境。此外,它具有对许多数据科学家常用的 Conda 环境的内置支持。

图片

数据库工具

如果我们每天都在使用 MongoDB、MySQL 和 Oracle 等数据库,那么我有个好消息!DataSpell 可以连接到数据库,因此我们可以直接从 IDE 访问和查询数据库。

图片

以下是支持的数据库工具的完整列表:

图片

这里介绍如何使用sqlite3包建立连接、创建数据库和表:

图片

现在可以像往常一样插入数据:

图片

Dataspell 的特别之处在于无需离开 IDE 或编写不必要的查询即可探索数据库的选项。只需双击数据库,就会打开一个新的侧窗口,然后可以单击任何感兴趣的表格,以在单独的选项卡中对其进行探索:

图片

其实该功能在PyCharm 的专业版中也能找到,因此并不能算作DataSpell独有的功能。

Jupyter Notebook 缺少可以帮助我们轻松检测和删除代码中的错误的调试器。

幸运的是,DataSpell 有一个同时支持 Jupyter notebooks 和 Python 脚本的调试器。因此我们可以直接Debug,如在断点处停止、管理变量等等。

图片

我喜欢 Pycharm 和 DataSpell 的一点是当属其插件,他们有很多出色的插件可供我们下载。

其实我们为 Pycharm 安装的大多数插件也可均适用于 DataSpell。例如,使用 Rainbow CSV 为使用 Pycharm 打开的 CSV 文件中的列设置不同的颜色。

图片

虽然介绍了这么多关于Dataspell的优点,但用不用还是取决于你的实际需求,如果你的编码工作比数据科学多,那么 PyCharm 可能是更好的选择。另一方面,如果你所做的大部分工作都是纯粹的数据科学,那么 Dataspell 就是你的一个较好的选择。而相对于免费Jupyter,收费的Dataspell也是是阻止你使用的一大原因。

归根结底,永远留在我们身边的不是工具,而是我们通过使用最适合我们需求的工具获得的知识。你会不会从 JupyterLab 或 Jupyter Notebook 切换到Dataspell呢?

责任编辑:武晓燕 来源: 数据STUDIO

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK