运行 jn 命令之后,你可以通过网络内部的任何一个浏览器访问 <https://your-fedora-host.com:8888> (LCTT 译注:请将域名替换为服务器的域名),就可以看到 Jupyter 的用户界面了,需要使用前面设置的密码登录。你可以尝试键入一些 Python 代码和标记文本,看起来会像下面这样:
Jupyter with a simple notebook
除了 IPython 环境,安装过程还会生成一个由 terminado 提供的基于 web 的 Unix 终端。有人觉得这很实用,也有人觉得这样不是很安全。你可以在配置文件里禁用这个功能。
JupyterLab:下一代 JupyterJupyterLab 是下一代的 Jupyter,拥有更好的用户界面和对工作空间更强的操控性。在写这篇文章的时候 JupyterLab 还没有可用的 RPM 软件包,但是你可以使用 pip 轻松完成安装:
$ pip3 install jupyterlab --user
$ jupyter serverextension enable --py jupyterlab
然后运行 jupiter notebook 命令或者 jn 快捷命令。访问 <:8888/lab> (LCTT 译注:将域名替换为服务器的域名)就可以使用 JupyterLab 了。
数据科学家使用的工具在下面这一节里,你将会了解到数据科学家使用的一些工具及其安装方法。除非另作说明,这些工具应该已经有 Fedora 软件包版本,并且已经作为前面组件所需要的软件包而被安装了。
NumpyNumpy 是一个针对 C 语言优化过的高级库,用来处理大型的内存数据集。它支持高级多维矩阵及其运算,并且包含了 log()、exp()、三角函数等数学函数。
Pandas在我看来,正是 Pandas 成就了 Python 作为数据科学首选平台的地位。Pandas 构建在 Numpy 之上,可以让数据准备和数据呈现工作变得简单很多。你可以把它想象成一个没有用户界面的电子表格程序,但是能够处理的数据集要大得多。Pandas 支持从 SQL 数据库或者 CSV 等格式的文件中提取数据、按列或者按行进行操作、数据筛选,以及通过 Matplotlib 实现数据可视化的一部分功能。
MatplotlibMatplotlib 是一个用来绘制 2D 和 3D 数据图像的库,在图象注解、标签和叠加层方面都提供了相当不错的支持。
matplotlib pair of graphics showing a cost function searching its optimal value through a gradient descent algorithm
SeabornSeaborn 构建在 Matplotlib 之上,它的绘图功能经过了优化,更加适合数据的统计学研究,比如说可以自动显示所绘制数据的近似回归线或者正态分布曲线。
Linear regression visualised with SeaBorn
StatsModelsStatsModels 为统计学和经济计量学的数据分析问题(例如线形回归和逻辑回归)提供算法支持,同时提供经典的 家族 ARIMA。
Normalized number of passengers across time \(blue\) and ARIMA-predicted number of passengers \(red\)
Scikit-learn作为机器学习生态系统的核心部件,Scikit 为不同类型的问题提供预测算法,包括 (算法包括 Elasticnet、Gradient Boosting、随机森林等等)、 和聚类问题(算法包括 K-means 和 DBSCAN 等等),并且拥有设计精良的 API。Scikit 还定义了一些专门的 Python 类,用来支持数据操作的高级技巧,比如将数据集拆分为训练集和测试集、降维算法、数据准备管道流程等等。
XGBoost