Jupyter是一个开源的交互式计算环境,由Fernando Perez和Brian Granger于2014年创立。它提供了一种方便的方式来展示、共享和探索数据,并且可以与多种编程语言和数据格式进行交互。Jupyter的历史可以追溯到2001年,当时Fernando Perez正在使用Python进行科学计算。他意识到需要一个更好的工具来管理自己的工作流程,于是他开始开发一个名为IPython的交互式解释器。这个解释器支持命令行交互和自动补全,可以让科学家们更快、更高效地进行实验。
随着时间的推移,IPython变得越来越流行。它不仅支持Python,还支持其他编程语言,如R、Julia和Ruby等。此外,它还引入了"Notebook"功能,这是一种基于Web的界面,可以让用户在单个文档中编写代码、文本和多媒体内容。这种功能使得科学家们可以将自己的工作分享给其他人,并且可以使用具有交互性的图形和表格来展示自己的结果。
在2014年,IPython更名为Jupyter,以反映它已经支持多种编程语言,而不仅仅是Python。Jupyter包括三个主要的组件:Jupyter Notebook、JupyterLab和JupyterHub。Jupyter Notebook是最初的Notebook实现,它支持多种编程语言和文件格式,并且可以将代码、文本和图形组合在一起。JupyterLab是一个新的、更强大的界面,它提供了更多的自定义选项和工具,并且可以用于更高级的科学计算任务。JupyterHub是一个服务器管理界面,可以用于管理和监控Jupyter Notebook服务器。
Jupyter Notebook(此前被称为IPython notebook)是一个交互式笔记本,支持运行40多种编程语言。Jupyter Notebook的本质是一个Web应用程序,便于创建和共享程序文档,支持实时代码,数学方程,可视化和markdown。用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。用户可以通过电子邮件、Dropbox、GitHub和Jupyter Notebook Viewer将Jupyter Notebook分享给其他人。在Jupyter Notebook中,代码可以实时地生成图像、视频、LaTeX和JavaScript。数据挖掘领域中最热门的比赛Kaggle里的资料都是Jupyter格式。
在Linux系统下,可以通过以下步骤安装和配置Jupyter:
sudo yum install python-pip
sudo pip install --upgrade pip
sudo yum groupinstall 'Development Tools'
sudo pip install jupyter
jupyter notebook --generate-config
jupyter notebook password
或者 from notebook.auth import passwd
,然后输入密码并复制密文vim ~/.jupyter/jupyternotebookconfig.py
,添加如下内容:c.NotebookApp.ip = ''
c.NotebookApp.password = u'sha1:密文'
c.NotebookApp.openbrowser = False
c.NotebookApp.port = 8888
c.NotebookApp.notebookdir = '/home/project'
jupyter notebook
firewall-cmd --zone=public --add-port=8888/tcp --permanent
,然后重启防火墙:sudo systemctl restart firewalld
jupyter notebook
,浏览器输入:http://个人ip:8888/tree