当前位置:   article > 正文

【Python】numpy、scipy、pandas这些库的区别是什么?

numpy scipy pandas

点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

知乎上有个热门问题,问numpy,scipy,pandas这3个库的区别是什么?

打个比方,pandas类似Excel软件,scipy就像Excel里的函数算法包,numpy则好比构建Excel逻辑的底层语句。

所以说pandas擅长数据处理,scipy精通数学计算,numpy是构建pandas、scipy的基础库。

我们知道numpy通过N维数组来实现快速的数据计算和处理,它也是Python众多数据科学库的依赖,其中就包括pandas、scipy。

而numpy本身不依赖于任何其他Python软件包,只依赖于加速的线性代数库,通常为 Intel MKL或 OpenBLAS。

bc776a331dc1965b48910fff2f8b8977.png

pandas是python数据处理的核心库,它基于数组形式提供了极其丰富的数据操作,对比excel有过之而无不及。

它可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征,广泛应用在学术、金融、统计学等各个数据分析领域。

一般来说,学python数据分析只需要学透pandas就够了,辅助加一些numpy、scipy、matplotlib等库。

14dad2218b2625878d7d347acfad5b77.png

scipy 是一个用于数学、科学、工程领域的常用软件包,可以处理最优化、线性代数、积分、插值、拟合、特殊函数、快速傅里叶变换、信号处理、图像处理、常微分方程求解器等。。

其包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算。

31db4d7423eb312bb25356bc18aea762.png

scipy中主要的计算模块:

  • scipy.integrate:数值积分例程和微分方程求解器

  • scipy.linalg:扩展了由numpy.linalg提供的线性代数例程和矩阵分解功能

  • scipy.optimize:函数优化器(最小化器)以及跟查找算法

  • scipy.signal:信号处理工具

  • scipy.sparse:稀疏矩阵和系数线性系统求解器

  • scipy.special:SPECFUN(这是一个实现了许多常用数学函数(如伽马函数)的Fortran库)的包装器

  • scipy.stats:标准连续和离散概率分布、各种统计检验方法,以及更好的描述统计法

  • scipy.weave:利用内联C++代码加速数组计算的工具

综上所述,pandas和scipy是建立在numpy数组基础之上的数据工具,三者的协同工作可以高效解决很多问题,在金融、财务、天文、生物、气象和气候、材料等多个领域得到了广泛应用。

 
 

好消息!

小白学视觉知识星球

开始面向外开放啦

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/987494
推荐阅读
相关标签