IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    如何让Jupyter Notebook支持多种编程语言?

    shendao发表于 2017-06-04 20:43:54
    love 0

    先贤说得好,不患寡而患不均。咱们对Python 2, Python 3和R,还是一视同仁吧。

    如何让Jupyter Notebook支持多种编程语言?

    疑问

    在《 如何用Python做词云 》一文中,有眼尖的同学发现我在Jupyter Notebook新建笔记本时,菜单里有多个选项。

    如何让Jupyter Notebook支持多种编程语言?

    这就意味着我可以直接新建支持Python 2,Python 3,甚至是R语言的笔记本。

    可是当你自己安装了Anaconda后,新建笔记本的选项却是这样的。

    如何让Jupyter Notebook支持多种编程语言?

    你可能马上觉得不公平了——为什么我这里的选项这么少?我也想让自己的Jupyter Notebook同时支持这3种不同编程环境!

    其实Jupyter Notebook可以支持的编程语言,远不止这几种。下图只是个不完全列表。

    如何让Jupyter Notebook支持多种编程语言?

    想看完全的列表,请访问 这个链接 。

    本文我们只讨论如何让Jupyter Notebook支持Python 3和R这两种编程语言。如果你是初学者,我建议你还是先把Python 2掌握熟练,再去尝试迁移到Python 3。至于R,也有现成的RStudio等优秀集成开发环境可以使用。

    当然,如果你爱好折腾,欢迎按照本文的步骤尝试。

    Python 3

    首先你需要保存目前Jupyter Notebook里面的全部内容,然后切换到“终端”或者“命令提示符”下面。

    如何让Jupyter Notebook支持多种编程语言?

    若是如图所示,之前的Jupyter Notebook正在运行,那么按照提示键入Control和C两个按键,退出正在运行的Jupyter Notebook。

    之后键入命令:

    pip3 install ipykernel python3 -m ipykernel install

    然后,再次启动Jupyter Notebook

    jupyter notebook

    这次新建笔记本的菜单就变成了这样:

    如何让Jupyter Notebook支持多种编程语言?

    好了,Jupyter Notebook里Python 3的编程环境就安装好了。

    我们可以新建一个Python 3的笔记本,然后输入以下命令:

    1/2 print "abc"

    如果你已经熟悉了Python 2,那么你应该会判定第一条语句输出为0(因为被除数和除数都是整数),而第二条语句会打印”abc”这个字符串。

    然而在Python 3环境中,输出是这个样子的。

    如何让Jupyter Notebook支持多种编程语言?

    如果你也获得了这样的输出结果,那么恭喜你,你的Python 3环境安装已经顺利完成了。

    R

    R语言是统计学专业非常喜欢的编程语言。虽然它的最初设计并不是一种通用语言,但是由于许多统计专家把它当做母语,因此这群人干什么工作都恨不得把R用上。

    久而久之,R的功能已经多到令人发指的程度了。你用C语言或者Java写几百行语句,到了R这里可能就跟用计算器一样,几行代码搞定。如果你打算用好R语言,一定要学会如何找到更高效的软件包,那会让你事半功倍。

    如果你还没有安装R,请到 这个网址 选择一个合适的下载镜像。列表里面会分国家地区列出链接。

    如何让Jupyter Notebook支持多种编程语言?

    我一般选择中国区的第一个选项,也就是清华大学的镜像。点击链接进入后,你会看到这样的页面。

    如何让Jupyter Notebook支持多种编程语言?

    根据你的系统类型,从右侧的Linux, OS X和Windows不同下载链接选择对应版本,并且根据提示安装就可以。建议使用默认设置。

    安装了R语言后,我们在Jupyter Notebook中安装R语言支持。

    首先你还是需要保存目前Jupyter Notebook里面的全部内容,然后切换到“终端”或者“命令提示符”下面。

    如何让Jupyter Notebook支持多种编程语言?

    按照提示键入Control和C两个按键,退出正在运行的Jupyter Notebook。之后键入命令:

    R

    你会看到这样的提示:

    如何让Jupyter Notebook支持多种编程语言?

    就在这个“>”提示符下面,输入以下语句:

    install.packages('devtools')

    R会提示你选择合适的镜像。

    如何让Jupyter Notebook支持多种编程语言?

    找到其中有“China”字样的就对了。这里列表中唯一来自中国的镜像是兰州大学的服务器。

    然后继续执行:

    devtools::install_github('IRkernel/IRkernel') IRkernel::installspec() install.packages('ggplot2')

    好了,为了退出R环境,我们输入:

    q()

    现在,我们回到了终端下面,执行

    jupyter notebook

    这次,我们再新建笔记本,就多了R这样一个选项了。

    如何让Jupyter Notebook支持多种编程语言?

    我们尝试一下,看看是否好用。

    新建一个R笔记本。随便起个名字,我这里叫做“test-r”。

    然后输入以下语句,之后按”Shift+Enter”来执行。

    library("ggplot2") ggplot(data = mtcars, aes(x = wt, y = mpg, color = cyl)) + geom_point() +  geom_smooth(method="lm") +  labs(main="Regression of MPG on Weight",  xlab="Weight", ylab="Miles per Gallon")

    如果你看到如图所示的运行结果,证明一切安装正常。

    如何让Jupyter Notebook支持多种编程语言?

    生成的图像是这个样子的:

    如何让Jupyter Notebook支持多种编程语言?

    R语言的功能够强大吧?写起来也足够简洁明快吧?

    至此,Jupyter Notebook已经能够同时正确支持Python 2, Python 3和R三种编程开发环境了。编码愉快哟!

    讨论

    除了Jupyter Notebook之外,你还知道哪些好用的Python与R开发环境?与Jupyter Notebook比起来,它们的特点是什么?在数据科学领域,你觉得Python与R哪个更有前途?欢迎留言,把你的经验分享给大家,我们一起交流讨论。



沪ICP备19023445号-2号
友情链接