JupyterNotebook为数据分析

相信有过项目开发或数据分析经验的人,对“手忙脚乱”场景绝不陌生:在IDE中编写、测试代码,另一个窗口中预览结果,同时在另一个文本文档中对测试进行记录、解释程序代码、说明运行结果等;不同的界面、窗口之间的切换,势必影响工作的效率。那么,能不能将所有的内容:说明文字、代码、图表、公式、结论,一起完整地记录呈现?有!JupyterNotebook就是一款非常适合数据科学工作者的神器。

JupyterNotebook是一个可以在浏览器中使用的交互式的计算应用程序,该应用程序的所有可见的内容,以笔记本文档表示,包括计算的输入和输出、解释文本、数学、图像和对象的富媒体等表示。因此,JupyterNotebook可以实现将代码、文字完美结合起来,非常适合从事机器学习、数据分析等数据科学工作的人员。

为什么选择:JupyterNotebook

JupyterNotebook有着诸多的优点:

可以通过浏览器编辑和运行代码,不用安转其他编辑器,不受系统的限制;代码运行的结果,直接呈现在该代码块下面;同时,在代码块后面写代码的说明,而说明文档支持Markdown语法。

JupyterNotebook从其名字中可以看出,它非常适用于编程语言Julia、Python以及R;除此之外,可以通过安装相应的kernel,实现MATLAB等语言的使用。

可以根据个人的需求,导出为HTML、Markdown、LaTeX、PDF以及幻灯片等格式的文档,并可以将Notebook通过GitHub进行存储和展示。

交互式的展现,输出图表、视频、公式,Markdown单元格除了通过MathJax渲染公式,还支持LaTeX和AMSLaTeX定义的标准数学环境,也可以使用标准方法定义LaTeX宏。另外,还可以配合一些交互式的插件,呈现地图、三维模型等内容。

可以不受时间、地点的限制,通过远程服务器进行运算。购买云服务器,将JupyterNotebook安装部署在云服务器上,即可通过浏览器进行开发、记录、执行代码的整个计算过程。

两种安装方式

如果个人擅长使用Python,可以在安装Python后,通过pip安装。在后续的开发使用中,还需要根据个人的需要,安装一些数学分析、机器学习、深度学习的开源包。比如,通过pip安装下面的数据科学包:

Numpy:主要用于高维的数组运算,拥有运算速度快的数学库;Scipy:依赖于Numpy,可便捷的操作N维数组;Pandas:关系型、标记型数据的数据分析工具;Scikit-learn:依赖于NumPy,SciPy和matplotlib的机器学习工具;Matplotlib:绘图库,可以绘制函数图、统计图等。

如果是一个Python小白,那么Anaconda非常适合初学者,它包含了Numpy、Scipy、Pandas、Scikit-learn、Matplotlib等大量的科学包,可避免单独安装;而且通过包管理工具conda,方便地安装、更新、卸载工具包。

后续的几个章节,将介绍JupyterNotebook的使用,比如:在EXCEL中使用,配合插件实现交互式展现等。




转载请注明:http://www.aierlanlan.com/tzrz/4587.html