Rust交互式编程环境搭建(让Rust跑在Jupyter上)

本文详细指导如何在Linux上搭建Rust交互式环境,包括安装Miniconda、创建Python环境、安装JupyterLab及其扩展,以及关键的EvCxR集成,适合数据科学家和机器学习者转向Rust编程。
摘要由CSDN通过智能技术生成

Rust交互式编程环境搭建

数据科学和机器学习社区似乎压倒性地偏爱Jupyter Notebook。这主要是因为在数据科学领域使用Jupyter Notebook有三大优势:

  1. Jupyter Notebook将IPython的交互式特点发挥到了极致

    熟悉机器学习和数据分析的朋友应该知道:分析和建模是非常碎片化的工作,而每一个片段又有着非常强的独立性,甚至可以说除了数据本身之外,每一块的代码之间并没有很强的关联性。数据分析和建模的过程往往是一个不断实验的过程。我们需要一次又一次地改变数据预处理方式、尝试不同的特征工程方案、不厌其烦地调整模型参数。每一步工作都需要反复实验、反复修改,而下一板块需要用到的只不过是上一板块输出的数据。通过Jupyter Notebook,我们可以以最快的速度得知自己做出的调整是好是坏,并尽快进入到下一次的实验当中。

  2. Jupyter Notebook更利于汇报和教学

    因为Jupyter Notebook本身的模块化和内容的清晰化,使其天生具备如PPT一般的展现工作成果的功能。并且Jupyter Notebook中可以将输出结果嵌套在Notebook中,并且支持Markdown写作,这就让我们可以在Jupyter Notebook中输入任何需要展现的内容,并且这些内容都会以一种有组织、有层次、逻辑严密的形式展示出来。

  3. 内置大量魔术命令

    Jupyter Notebook 内置大量的魔术命令(比如%Matplotlib inline,%timeit等),可以方便的输出我们关心的指标,帮我们更快地进行分析。

上述三点让Jupyter Notebook成为数据科学领域的最佳工具。

Jupyter Notebook的默认内核是Python,也可以替换成R,JavaScript 等动态语言。编译型语言,例如C++、Java,需要额外的扩展工具来支持。Rust作为静态编译型语言,自然也需要外部工具扩展来实现交互式编程,其中最成熟的当属Google开源的EvCxR(Evaluation Context for Rust)。本文将带领大家一步一步搭建起Rust交互式编程环境。

在这里插入图片描述

1. 安装Miniconda

有很多方法可以安装并建立交互式编程环境,这里我推荐用Miniconda

Miniconda是一款小巧的python环境管理工具,安装包大约只有50M多点,其安装程序中包含conda软件包管理器和Python。一旦安装了Miniconda,就可以使用conda命令安装任何其他软件工具包并创建环境等。

你也可以不装Miniconda,直接安装Jupyter Lab。但我建议用Miniconda,因为除了交互式编程环境,我们还需要Miniconda来管理包和虚拟环境。

Miniconda的官网上有详细的安装教程。如果你像我一样使用Linux,你可以在控制台运行如下命令:

wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh

chmod +x Miniconda3-latest-Linux-x86_64.sh 

./Miniconda3-latest-Linux-x86_64.sh

上面的命令将下载Miniconda的安装脚本并启动交互式安装。按照提示一步步完成安装,当你看到

Thank you for installing Miniconda3!

说明安装成功。

2. 创建环境

Miniconda安装好后,我们需要创建并配置环境。如果在安装时已经将Miniconda加入到环境变量PATH中,那么你可以直接在控制台、Poweshell或CMD中运行conda命令。

我们可以通过下面的命令创建并配置环境:

conda create -n rustenv python=3

其中rustenv是环境名,你可以替换成任意你喜欢的名字。

上面的命令会创建一个名叫rustenv的conda环境并下载最新的Python 3包。你将看到一个即将下载安装的包的列表,并询问你是否继续。输入y进行安装。等待安装成功后,你将看到如下信息:

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
# $ conda activate rustenv
#
# To deactivate an active environment, use
#
# $ conda deactivate

消息提示输入如下命令激活并进入环境:

conda activate rustenv

输入执行后你将看到控制台提示符最前端会出现括号括起来的环境名。

(rustenv) jarod_laptop:~ jarod$

命令行提示符前的环境名有助于你识别当前在那个环境下。每次电脑重启,都需要执行conda activate rustenv进入rustenv环境。

3. 安装Jupyter Lab

环境安装好后,你可以输入jupyter lab启动Jupyter Lab实例。但是,如果你是新建的环境,执行jupyter lab会看到一个报错,

(rustenv) jarod_laptop:~ jarod$ jupyter lab
-bash: jupyter: command not found

这是因为没有安装Jupyter Lab造成的。接下来我们通过如下命令安装Jupyter Lab:

conda install -c conda-forge jupyterlab

4. 安装Jupyter Lab扩展

Jupyter Lab有很多扩展插件可以实现丰富的扩展功能,其中一个非常有用的插件是plotly。它可以让Jupyter渲染Plotly可视化图表。在conda环境下执行下面的命令即可安装:

jupyter labextension install jupyterlab-plotly

这个安装可能需要花点时间。安装成功后控制台会再次出现输入提示符。

Jupyter Lab还支持主题换肤,如果你喜欢深色主题,可以试一下下面这个主题:

jupyter labextension install @shahinrostami/theme-purple-please

在这里插入图片描述

图1. Jupyter Lab深色主题

5. 安装Rust

有很多中方法可以安装Rust,大家可以参考Rust官方教程。推荐用rustup安装。我用的操作系统是Linux,可以在控制台通过如下命令安装:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

本专栏的示例代码兼容多个Rust版本,由于我本机的Rust版本为1.65.0,我可以保证所有代码和包都可以在Rust 1.65.0下正常运行。你可以通过下面命令将Rust版本锁定为1.65.0

rustup default 1.65.0

运行上面代码可能会提示你将Cargo加入环境变量PATH,

source $HOME/.cargo/env

其他控制台,如zsh,输入上面命令可能无效,你可以用跟基本的命令添加环境变量

export PATH="$HOME/.cargo/bin:$PATH"

添加完后重启控制台,确保环境变量写入。你可以输入

cargo version

确认是否安装成功。如果控制台上输出cargo版本(cargo 1.65.0),说明安装好了。

6. 安装 EvCxR

接下来我们来安装EvCxR Jupyter内核。EvCxR可以让Rust运行在Jupyter Notebook上。你可以参考官网的方法来完成EvCxR的安装。我这里推荐的安装方法是:

cargo install evcxr_jupyter
evcxr_jupyter --install

7. 小试牛刀

安装完EvCxR后,我们就可以试一下整个环境能够跑起来。打开控制台,进入上面我们创建的conda环境,然后运行如下命令:

jupyter lab

这条命令将启动Jupyter Lab服务,并打开浏览器显示Jupyter Lab的前端界面。

在这里插入图片描述

图2. Jupyter Lab前端界面

如果在界面上Notebook和Console中能看到Rust图标,这就说明我们环境搭建好了。

我们可以新建一个Rust Notebook。点击Notebook栏的Rust图标就可以创建一个以Rust为内核的notebook。如果环境搭建没问题,那么会在当前目录下新建一个名为Untitled.ipynb 的空白notebook。我们可以试着在上面写一些Rust代码,按照管理,我们来写个“Hello World!”:

println!("Hello World!");

如果环境配置一切正常,那么运行上面代码你将看到输出Hello World!

总结

本章我们已经下载、安装、配置和测试了我们的Rust交互式编程环境。我们喜爱的Jupyter环境现在可以运行Rust代码了!随着Rust的日渐壮大,很多原本Python上好用的包在Rust都有相对应的实现。后面我将陆续给大家介绍Python机器学习常用包的Rust替代,让大家逐渐用Rust替代Python完成机器学习任务。

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
你可以使用IntelliJ IDEA作为Rust开发环境,并通过安装相应的插件来提供Rust的支持。下面是一些步骤来搭建Rust编程环境(IDEA插件): 1. 首先,确保你已经安装了Rust编程语言。你可以从[Rust官方网站](https://www.rust-lang.org)下载并安装Rust。 2. 打开IntelliJ IDEA,进入插件市场。你可以通过点击菜单栏中的“File” -> “Settings”(或者在Windows上是“File” -> “Settings”)来打开设置。 3. 在设置界面中,选择“Plugins”(或者在Windows上是“Plugins”)。 4. 在插件市场中搜索“Rust”,找到并安装“Rust”插件。 5. 安装完成后,重启IntelliJ IDEA。 6. 确保Rust已经正确安装,并且环境变量已经设置好。你可以在命令行中运行`rustc --version`来验证Rust是否正确安装。 7. 在IntelliJ IDEA中创建一个新的Rust项目。你可以选择“File” -> “New” -> “Project”,然后在左侧的面板中选择“Rust”,点击“Next”。 8. 在项目设置中,选择Rust SDK。如果你已经正确安装了Rust并设置好了环境变量,IntelliJ IDEA应该能够自动检测到Rust SDK。如果没有检测到,你可以手动选择正确的Rust SDK路径。 9. 完成设置后,你就可以在IntelliJ IDEA中开始编写和运行Rust程序了。 希望这些步骤能够帮助你搭建Rust编程环境。如果你遇到了任何问题,可以参考IntelliJ IDEA的文档或者在Rust社区寻求帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JarodYv

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值