科学类库SciPy的核心结构
郝伟 2021/03/023
SciPy是一个常用的科学类库,在网上有大量的相关教程,但是网上的内容多是只见树木不见森林,缺少对整个类库的描述。所以本文就通过调研和总结,对此类库的结构进行介绍。由于SciPy的类库内容非常多,所以本文只对其常用或核心的内容进行主要简介。
SciPy (发音:沙怕一) 有两层含意:狭义上指的是 SciPy库;广义上指定的是是一个基于Python的用于数学、科研和工程的完成生态环境,称为SciPy栈,包括以下6个项目(5库1台):
以上6个项目均为社区更新,NumFOCUS 支助。本文主要介绍的是 SciPy 库。
SciPy库主要有十多个核心功能,每个功能都有相应的类来支持,如下表所示。
| 类名 | 作用 |
|---|---|
| scipy.special | 一些特殊函数。 |
| scipy.integrate | 积分相关内容。 |
| scipy.optimize | 优化相关。 |
| scipy.interpolate | 函数插值。 |
| scipy.fft | 傅立叶变更。 |
| scipy.signal | 信号处理。 |
| scipy.linalg | 线性代数。 |
| scipy.sparse.csgraph | 压缩稀疏矩阵路由算法相关。 |
| scipy.spatial | 空间数据结构和算法。 |
| scipy.stats | 统计学相关。 |
| scipy.ndimage | 多维图像处理相关。 |
| scipy.io | 文件读写相关。 |
以下是主要库的文档入口地址:
SciPy是一个很大的库,包括的内容非常丰富,一般人很难全部掌握(实际上也不需要)。我们只需要关注自己所需要的计算内容即可,如常用的积分、统计学线性代数相关的内容等。
[1] SciPy官网, https://www.SciPy.org/
[2] SciPy官方文档, https://docs.scipy.org/doc/
[3] SciPy API文档, https://docs.scipy.org/doc/scipy/reference/