【数据】数据科学家喜欢Jupyter Notebook的10个原因

在过去的二十年中,Python越来越多地用于科学计算和数据分析。 今天,Python的主要优势以及它如此受欢迎的主要原因之一是它将科学计算功能带给了许多研究领域和行业中使用的通用语言。 这使得从研究到生产的过渡变得更容易。

IPython是一个Python库,最初旨在改进Python提供的默认交互式控制台并使其对科学家友好。 在2011年,IPython首次发布10年后,IPython Notebook被引入。 这个基于Web的IPython接口把代码,文本,数学表达式,内联图,交互式图形,小部件,图形界面以及其他丰富的媒体集成到一个独立的可共享的Web文档中。 该平台为交互式科学计算和数据分析提供了理想的门户。 IPython已经成为研究人员,工程师,数据科学家,教师和学生不可或缺的一部分。

几年后,IPython在科学界和工程界获得了不可思议的盛誉。 Notebook开始支持越来越多的Python以外的编程语言。 2014年,IPython开发者宣布了Jupyter项目,该项目旨在改进Notebook的实现并通过设计使其与语言无关。 该项目的名称反映了Notebook支持三种主要科学计算语言的重要性:Julia,Python和R.

今天,Jupyter本身就是一个生态系统,具有几种可供选择的Notebook界面(JupyterLab,nteract,Hydrogen等),交互式可视化库,与Notebook兼容的创作工具。 Jupyter有自己的会议JupyterCon。 该项目得到了几家公司以及Alfred P. Sloan基金会和Gordon和Betty Moore基金会的资助。

除了Jupyter Notebook 的丰富传统以及它为开发人员提供的更丰富的生态系统之外,还有十个理由让您开始将它用于您的下一个数据科学项目,前提是现在还没有使用它。

  1. 所有聚合在一个地方:Jupyter笔记本是一个基于Web的交互式环境,它将代码,富文本,图像,视频,动画,数学公式,图表,地图,交互式图形和小部件以及图形用户界面组合成一个文档。
  2. 易于共享:笔记本保存为结构化文本文件(JSON格式),这使得它们可以轻松共享。
  3. 易于转换:Jupyter附带了一个特殊的工具nbconvert,可将notebook转换为其他格式,如HTML和PDF。 另一个在线工具nbviewer允许我们直接在浏览器中渲染一个公共可用的笔记本。
  4. 独立于语言:Jupyter的架构与语言无关。 客户端和内核之间的解耦使得用任何语言编写内核成为可能。
  5. 易于创建内核包装器:Jupyter为可以用Python包装的内核语言提供了一个轻量级接口。 包装内核可以实现可选的方法,特别是代码完成和代码检查。
  6. 易于定制:Jupyter界面可用于在Jupyter Notebook(或其他客户端应用程序,如控制台)中创建完全定制的体验。
  7. 自定义魔术命令的扩展:使用自定义魔术命令创建IPython扩展,使交互式计算变得更加简单。 许多第三方扩展和魔术命令都存在,例如,允许在笔记本中直接编写Cython代码的%% cython。
  8. 轻松可重复实验:Jupyter笔记本可以帮助您轻松进行高效且可重复的交互式计算实验。 它可以让你保存你的工作的详细记录。 此外,Jupyter Notebook的易用性意味着您不必担心可重复性; 只需在笔记本上做所有的互动工作,将它们置于版本控制之下,并定期提交。 不要忘记将代码重构为独立的可重用组件。
  9. 有效的教学和学习工具:Jupyter笔记本不仅是科学研究和数据分析的工具,而且是教学的好工具。 一个例子就是IPython Blocks - 一个让你或你的学生创建彩色块的网格的库。
  10. 交互式代码和数据探索:ipywidgets包提供了许多用于交互式浏览代码和数据的通用用户界面控件。

您在阅读中,有什么见解,请评论。

作者:Aarthi Kumaraswamy 链接:https://hub.packtpub.com/10-reasons-data-scientists-love-jupyter-notebooks/ 版权声明:作者保留权利,严禁修改,转载请注明原文链接。

关于更多数据科学内容,请阅读数据科学系列文章。

数据人网是数据人学习、交流和分享的平台http://shujuren.org 。专注于从数据中学习到有用知识。 平台的理念:人人投稿,知识共享;人人分析,洞见驱动;智慧聚合,普惠人人。 您在数据人网平台,可以1)学习数据知识;2)创建数据博客;3)认识数据朋友;4)寻找数据工作;5)找到其它与数据相关的干货。 我们努力坚持做原创,聚合和分享优质的省时的数据知识! 我们都是数据人,数据是有价值的,坚定不移地实现从数据到商业价值的转换!

原文发布于微信公众号 - 数据科学与人工智能(DS_AI_shujuren)

原文发表时间:2018-04-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏企鹅号快讯

对主流编程语言的吐槽

1.C 语言 ? ? 作为拥有「便携式汇编语言」头衔的 C 语言, 绝对充斥着各种问题!相信没有人会喜欢编写,大量独立的头文件,也更没有几个人能在使用预处理器的...

25080
来自专栏云加头条

腾讯云文件存储CFS中国香港地区上线,打造企业出海高速直通车

2017年11月22日,腾讯云率先在香港地区推出了文件存储CFS,以中国香港为中心辐射国外市场,满足公有云客户日益增长的业务出海需求。这也是国内首家在香港地区提...

27700
来自专栏java一日一条

4个理由告诉你Java为何排行第一

Java已经有20年的历史了,甚至更久,而这取决于你所询问的人和你的计算方式。忽略它的年龄不看,Java依然排行第一。它的实用性、性能和向后兼容性都彰显其价值所...

8020
来自专栏C语言及其他语言

【干货】27种主流编程语言分类及优劣

导读: 数据科学家 David Robinson 称,Python 是访问量增长最快的主流编程语言。在 Stackoverflow 上,主流编程语言如 Jav...

910100
来自专栏java工会

一位10年Java工作经验的架构师聊Java和工作经验

时光飞逝,我事业中第一个十年已然结束了。在这十年里,让我收获了很多,跟大家分享一下我在 IT 职场方面的一些个人经验,不一定对每个人都实用,请大家仅作参考吧。

14530
来自专栏无原型不设计

UI / UX设计师如何玩转用户心理学原理?

以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具。 ? 众所周知,心理学在APP的用户体验设计中起着非常...

34870
来自专栏PPV课数据科学社区

对5种主流编程语言的吐槽

接下来要为大家,介绍五款让我又爱又恨的编程语言! 不可否认,想要成为一名优秀的程序员确实是需要掌握多种编程语言。通过这几年的自虐式学习,我也慢慢的掌握了这些编程...

574100
来自专栏程序人生

如何用正确的姿势打开 TDD?

TDD(Test Driven Development)一直是程序界追求的一种开发境界。要想真正做到对项目有帮助的 TDD,并不是一件容易的事情。我见过不少团队...

304100
来自专栏企鹅号快讯

对5种主流编程语言的吐槽

不可否认,想要成为一名优秀的程序员确实是需要掌握多种编程语言。通过这几年的自虐式学习,小编也慢慢的掌握了这些编程语言。接下来要为大家,介绍五款让人又爱又恨的编程...

35270
来自专栏我是攻城师

4个理由告诉你Java为何排行第一

30150

扫码关注云+社区

领取腾讯云代金券