Skip to content

Latest commit

 

History

History
18 lines (10 loc) · 1.33 KB

File metadata and controls

18 lines (10 loc) · 1.33 KB

使用numpy和scipy处理复杂的数值计算问题

numpy虽然没在标准库但在python数据计算相关生态中其地位恐怕高于标准库.它是事实上python做科学计算的根基,许多科学计算工具要么依赖它要么接口定义向其靠拢.而scipy则是numpy的一个补充算法包.

科学计算主要需要的是完成代数方程,矩阵,微分,积分,微分方程,统计,方程求解等方面计算的能力.Python语言本身并不满足所有需求,但是NumPy和SciPy作为python语言很好的补充可以完成这些需求,同时numpy和scipy都是用C和Fortran实现的,因此性能很强,这让python在科学计算领域可以和matlab有抗衡的能力.

NumPy

NumPy是Python科学计算的基础程序包,它的主要贡献是

  • 提供了多维数组这一高效的数据结构
  • 提供了高性能的universal function可以将函数广播到数组的每个元素上
  • 提供了矩阵运算,张量运算等高性能线性代数计算接口

Scipy

SciPy是对NumPy的功能扩展,它提供了许多高级数学函数,例如微分,积分,微分方程,优化方法,数值分析,高级统计函数,方程式求解等功能,SciPy是在NumPy数组框架的基础上实现的,它对NumPy数组和基本的数组运算进行扩展,满足科学家和工程师解决问题时需要用到的大部分数学计算功能.