为 Jupyter Notebook 设置 Ruby Kernel

简介: 为 Jupyter Notebook 设置 Ruby Kernel

做数据科学离不开 Jupyter Notebook,但是显然 Jupyter Notebook 不单单是为了 Python 而设置(但是离开 Python 显然也很不方便)。

首先,我们需要安装 Jupyter,这里需要说明的是 python 有多种版本管理工具,做数据科学方面的话推荐conda, 如果喜欢 GUI 界面的话,可以选择Anaconda

安装好 Jupyter 以后,我们可以开始安装 Ruby Kernel。Ruby Kernel 用的是 IRuby

以 Mac 为例:

$ brew install rbenv automake gmp libtool wget
$ rvm install 2.4.1
$ rvm use 2.4.1

因为iruby已经很久没更新了,所以,最好直接使用默认的2.4.1的版本。在我的笔记本上,我装了2.5.3的 Ruby,但是然并卵。在运行 Jupyter 的时候总是提醒我找不到ruby-2.4.1

$  brew install zeromq
$ brew install czmq --HEAD
$ gem install cztop iruby

然后注册Ruby Kernel

$ iruby register --force

至此,如果顺利的话你启动 Jupyter Notebook 应该可以看到Ruby 2.4.1:

$ jupyter notebook

屏幕截图 2023-09-06 113221.png

在新建 ipynb 文件的时候,选择 Ruby Kernel 则可以了。

设置完之后你肯定想是不是可以运行一下 pandas,numpy,matplotlib 之类的 python 数据科学常用的库,很幸运的是确实有人通过pycall打包了一下这几个 python 库。

你可以通过以下命令安装: $ gem install numpy pandas$ gem install --pre matplotlib

使用的时候,基本可以参照 python 的语法来写。

比如说我要在 Jupyter Notebook 里面画个图,为了让图直接的 Notebook 里面显示,我们需要:

require "matplotlib/pyplot"
require 'matplotlib/iruby'
Matplotlib::IRuby.activate

屏幕截图 2023-09-06 113233.png

我们再来试试 Numpy (每次安装完 Gem 以后,需要重启一下 Jupyter)

x = Numpy.asarray([[1, 2, 3], [4, 5, 6]])
puts x
# [[1 2 3]
#  [4 5 6]]
puts x[1, 1..2]
# [5 6]
puts x.T
# [[1 4]
#  [2 5]
#  [3 6]]
puts x.dot x.T
# [[14 32]
#  [32 77]]
puts x.reshape([3, 2])
# [[1 2]
#  [3 4]
#  [5 6]]

PS:插入 cell 以后,按 Shift + Enter 可以直接运行 cell 中的代码。

当然了,很多 python 代码,都是把Numpy 简写为 np,在 Ruby 下当然也可以:

np = Numpy

因为,虽然 Ruby 中规定首字母大写的是常量,但是我们也确实可以这样使用:

因为,在 Ruby 中,当我们声明了一个 Module,Class 的时候,其实相当于给这个 Module,Class 起了一个名字而已。 所以,这样的用法是可以 的。

class A
   def self.foo
       p "foo"
    end
end
a = A
a.foo
=> foo

当然,最牛逼的是,你可以在 Jupyter 里面运行 Rails Console。

我们在 Rails App 根目录下面 启动 Jupyter notebook,然后在第一行引入 Rails App 的环境即可:

require "./config/environment"

然后你就可以像用 Rails Console 一样运行 Jupyter 了。

相关文章
|
5月前
|
数据采集 机器学习/深度学习 数据可视化
使用Jupyter Notebook进行数据分析:入门与实践
【6月更文挑战第5天】Jupyter Notebook是数据科学家青睐的交互式计算环境,用于创建包含代码、方程、可视化和文本的文档。本文介绍了其基本用法和安装配置,通过一个数据分析案例展示了如何使用Notebook进行数据加载、清洗、预处理、探索、可视化以及建模。Notebook支持多种语言,提供直观的交互体验,便于结果呈现和分享。它是高效数据分析的得力工具,初学者可通过本文案例开始探索。
|
3月前
|
Python
Jupyter Notebook又一利器nbterm,在终端玩notebook!
Jupyter Notebook又一利器nbterm,在终端玩notebook!
|
4月前
|
安全 数据安全/隐私保护 Docker
docker使用jupyter/datascience-notebook,重置密码,并且设置各类易用参数
记得在容器初始化的时候,参数的设置需要按照你的实际使用习惯和需求来配置。对于数据科学项目而言,数据的持续性和环境的稳定性至关重要。通过上述步骤,可以在保证数据安全的同时提高工作效率。
339 3
docker使用jupyter/datascience-notebook,重置密码,并且设置各类易用参数
|
5月前
|
文字识别 异构计算 Python
关于云端Jupyter Notebook的使用过程与感想
在自学Python时,由于家庭电脑使用冲突和设备老旧,转向云端平台。体验了多个服务:1. 魔搭modelscope(最喜欢,赠送资源丰富,社区活跃),2. Colaboratory(免费GPU,但有时重启,建议用阿里云),3. Deepnote(免费环境有限,但GPT-4代码生成功能强大),4. 飞桨aistudio(适合PaddlePaddle用户),5. ModelArts(曾有免费实例,现难找)。综合来看,阿里云的稳定性与服务更优,尤其是魔搭的自动代码修正功能。对于AIGC,推荐魔搭和付费版PAI-DSW。欢迎分享更多云端Jupyter平台体验。
275 1
|
5月前
|
Python 数据挖掘 数据可视化
Python数据分析——Pandas与Jupyter Notebook
【6月更文挑战第1天】 本文探讨了如何使用Python的Pandas库和Jupyter Notebook进行数据分析。首先,介绍了安装和设置步骤,然后展示了如何使用Pandas的DataFrame进行数据加载、清洗和基本分析。接着,通过Jupyter Notebook的交互式环境,演示了数据分析和可视化,包括直方图的创建。文章还涉及数据清洗,如处理缺失值,并展示了如何进行高级数据分析,如数据分组和聚合。此外,还提供了将分析结果导出到文件的方法。通过销售数据的完整案例,详细说明了从加载数据到可视化和结果导出的全过程。最后,讨论了进一步的分析和可视化技巧,如销售额趋势、产品销售排名和区域分布,以及
205 2
|
6月前
|
JSON 数据可视化 数据挖掘
适合数据分析的ide---Jupyter Notebook的安装使用
适合数据分析的ide---Jupyter Notebook的安装使用
116 2
|
6月前
|
Ubuntu 网络安全 数据安全/隐私保护
使用SSH隧道将Ubuntu云服务器Jupyter Notebook端口映射到本地
这样,你就成功地将Ubuntu云服务器上的Jupyter Notebook端口映射到本地,使你能够通过本地浏览器访问并使用Jupyter Notebook。
463 1
|
6月前
|
Linux 数据安全/隐私保护
anaconda运行Notebook和jupyter报错resource.setrlimit(resource.RLIMIT_NOFILE, (soft, hard)) ValueError
anaconda运行Notebook和jupyter报错resource.setrlimit(resource.RLIMIT_NOFILE, (soft, hard)) ValueError
58 0
|
6月前
|
自然语言处理 数据可视化 数据挖掘
Python 的科学计算和数据分析: 解释什么是 Jupyter Notebook?
Python科学计算与数据分析中,借助`numpy`进行数值计算,`matplotlib`用于绘图。Jupyter Notebook提供交互式编程环境,支持多语言,集成各种可视化工具。其优势在于结合代码、结果和文本,提升工作效率,具备自动补全、语法高亮等特性。示例展示了导入库,生成随机数据并用`matplotlib`画正弦波图的过程。Jupyter Notebook虽便捷,但复杂任务可能需结合`scipy`、`pandas`等更多库。
79 4
|
6月前
|
Linux 数据安全/隐私保护 Python
Linux下远程访问Jupyter Notebook 配置
Linux下远程访问Jupyter Notebook 配置
102 1