百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

厉害了,numpy!!!

liuian 2025-02-15 16:31 28 浏览

几乎所有使用Python处理分析数据的人都用过Pandas,因为实在太方便了,就像Excel一样,但你知道Pandas是基于Numpy开发出来的吗?

Pandas和Numpy的关系类似于国产安卓系统和原生安卓,Numpy提供底层数据结构和算法,搭配数据面板的分析模式,缔造了Pandas。

某种意义上来说,Numpy是Python数据科学领域金字塔尖的库。

有人这样问过。

这并不让人意外,虽然Numpy没有Pandas知名度高,但Numpy的性能之强大、应用之广会让很多人咋舌,甚至Numpy的论文登上了Nature杂志。

阅读和下载地址:https://www.nature.com/articles/s41586-020-2649-2

不清楚底细的人可能会问,到底什么是Numpy?

Numpy是专门用于多维数组和矩阵计算的Python库,Numpy的强大不在于有多少函数方法,而在于其多维数组和矩阵的计算能力和运行效率。

众所周知的商业软件matlab,也是基于多维数组和矩阵计算。

多维数组和矩阵计算最主要的特点是快,非常快。

知道线性代数吧,为了提高性能,有专门的线性代数库(如BLAS、LAPACK、Intel MKL等)对底层的矩阵运算进行了高度优化。

另外,CPU、GPU这些硬件对矩阵运算有很好的支持。

比如说,GPU具有大量的并行处理核心,非常适合执行大规模的矩阵运算。通过使用CUDA或OpenCL等技术,可以充分发挥GPU的并行计算能力。

在Numpy创建和使用多维数组很简单,使用array方法即可。

除了多维数组和矩阵计算,从Numpy本身来说,它以下4大特点确保了它的重要地位:

1、可以和Pandas等多种库进行交互

2、拥有各种科学计算API,任你调用

3、Numpy基于C语言开发,速度和C一样快

4、Numpy在Python中使用,操作和Python一样简洁

接下来,我们看看有哪些Python库的底层依赖库是numpy。

依赖代表这些库需要numpy支持才能运行,某种意义上来说,某个库作为依赖库越多代表它越重要。

以numpy作为依赖的部分python库:

  1. Pandas:最出名的数据处理和分析库,使用基于NumPy 的二维数组来分析数据。
  1. SciPy:类似于Matlab的数学和工程计算库,SciPy 库建立在 NumPy 之上,使用多维数组来计算。
  2. Matplotlib:Python中功能最齐全的可视化库,也是很多其他可视化库的依赖,它依赖 NumPy 进行数学运算以生成图形。
  3. Scikit-learn:拥有各类算法的机器学习库,使用 NumPy 进行数据的快速处理和算法实现。
  4. StatsModels:专门用于统计分析的算法库,依赖 NumPy 进行数值计算。
  5. TensorFlow PyTorch:最最出名的两个深度学习框架,各种大模型都是靠它们跑出来的,但是它们在底层使用 NumPy 进行张量操作。
  1. OpenCV:家喻户晓的计算机视觉,使用 NumPy 数组进行图像处理。
  2. NetworkX:图形网络分析库,用于复杂网络创建、操作和使用 ,使用NumPy 进行网络分析。

可以看到,很多主流的数据科学、机器学习、深度学习库都是靠numpy依赖,基于多维数组来进行计算,可见numpy有多么的重要,说它是数据科学的顶级库也不为过。

以下是一些numpy的基础函数和方法介绍:

  1. np.array(object, dtype=None, copy=True, order='K', subok=False, ndmin=0):
  • 创建一个 NumPy 数组。
  1. np.zeros(shape, dtype=float, order='C'):
  • 返回一个给定形状和数据类型的数组,其中所有元素都为 0。
  1. np.ones(shape, dtype=None, order='C'):
  • 返回一个给定形状和数据类型的数组,其中所有元素都为 1。
  1. np.empty(shape, dtype=float, order='C'):
  • 返回一个未初始化的数组,其元素值是随机的。
  1. np.arange(start, stop=None, step=1, dtype=None):
  • 返回一个与 Python 的 range 类似的数组,包含从 start 开始到 stop 结束(不包括 stop)的值,步长为 step。
  1. np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0):
  • 返回一个数组,其中包含 num 个从 start 到 stop 的等间隔的点。
  1. np.reshape(a, newshape, order='C'):
  • 将数组 a 重塑为 newshape 指定的形状。
  1. np.transpose(a, axes=None):
  • 转置数组,可选地按照 axes 指定的轴顺序。
  1. np.dot(a, b, out=None):
  • 矩阵乘法,计算两个数组的点积。
  1. np.vstack(tup):
  • 垂直堆叠数组,等价于 np.concatenate(tup, axis=0)。

相关推荐

搭建一个20人的办公网络(适用于20多人的小型办公网络环境)

楼主有5台机上网,则需要一个8口路由器,组网方法如下:设备:1、8口路由器一台,其中8口为LAN(局域网)端口,一个WAN(广域网)端口,价格100--400元2、网线N米,这个你自己会看了:)...

笔记本电脑各种参数介绍(笔记本电脑各项参数新手普及知识)

1、CPU:这个主要取决于频率和二级缓存,频率越高、二级缓存越大,速度越快,现在的CPU有三级缓存、四级缓存等,都影响相应速度。2、内存:内存的存取速度取决于接口、颗粒数量多少与储存大小,一般来说,内...

汉字上面带拼音输入法下载(字上面带拼音的输入法是哪个)

使用手机上的拼音输入法打成汉字的方法如下:1.打开手机上的拼音输入法,在输入框中输入汉字的拼音,例如“nihao”。2.根据输入法提示的候选词,选择正确的汉字。例如,如果输入“nihao”,输...

xpsp3安装版系统下载(windowsxpsp3安装教程)

xpsp3纯净版在采用微软封装部署技术的基础上,结合作者的实际工作经验,融合了许多实用的功能。它通过一键分区、一键装系统、自动装驱动、一键设定分辨率,一键填IP,一键Ghost备份(恢复)等一系列...

没有备份的手机数据怎么恢复

手机没有备份恢复数据方法如下1、使用数据线将手机与电脑连接好,在“我的电脑”中可以看到手机的盘符。  2、将手机开启USB调试模式。在手机设置中找到开发者选项,然后点击“开启USB调试模式”。  3、...

电脑怎么激活windows11专业版

win11专业版激活方法有多种,以下提供两种常用的激活方式:方法一:使用激活密钥激活。在win11桌面上右键点击“此电脑”,选择“属性”选项。进入属性页面后,点击“更改产品密钥或升级windows”。...

华为手机助手下载官网(华为手机助手app下载专区)

华为手机助手策略调整,已不支持从应用市场下载手机助手,目前华为手机助手是需要在电脑上下载或更新手机助手到最新版本,https://consumer.huawei.com/cn/support/his...

光纤线断了怎么接(宽带光纤线断了怎么接)

宽带光纤线断了可以重接,具体操作方法如下:1、光纤连接的时候要根据束管内,同色相连,同芯相连,按顺序进行连接,由大到小。一般有三种连接方法,分别是熔接、活动连接和机械连接。2、连接的时候要开剥光缆,抛...

深度操作系统安装教程(深度操作系统安装教程图解)
  • 深度操作系统安装教程(深度操作系统安装教程图解)
  • 深度操作系统安装教程(深度操作系统安装教程图解)
  • 深度操作系统安装教程(深度操作系统安装教程图解)
  • 深度操作系统安装教程(深度操作系统安装教程图解)
win7旗舰版和专业版区别(win7旗舰版跟专业版)

1、功能区别:Win7旗舰版比专业版多了三个功能,分别是Bitlocker、BitlockerToGo和多语言界面; 2、用途区别:旗舰版的功能是所有版本中最全最强大的,占用的系统资源,...

万能连接钥匙(万能wifi连接钥匙下载)

1、首先打开wifi万能钥匙软件,若手机没有开启WLAN,就根据软件提示打开WLAN开关;2、打开WLAN开关后,会显示附近的WiFi,如果知道密码,可点击相应WiFi后点击‘输入密码’连接;3、若不...

雨林木风音乐叫什么(雨林木风是啥)

雨林木风的创始人是陈年鑫先生。陈年鑫先生于1999年创立了雨林木风公司,其初衷是为满足中国市场对高品质、高性能电脑的需求。在陈年鑫先生的领导下,雨林木风以技术创新、产品质量和客户服务为核心价值,不断推...

aics6序列号永久序列号(aics6破解序列号)

关于AICS6这个版本,虽然是比较久远的版本,但是在功能上也是十分全面和强大的,作为一名平面设计师的话,AICS6的现有的功能已经能够应付几乎所有的设计工作了……到底AICC2019的功能是不是...

win7正在启动windows 卡住(win7正在启动windows卡住了 进入安全模式)
  • win7正在启动windows 卡住(win7正在启动windows卡住了 进入安全模式)
  • win7正在启动windows 卡住(win7正在启动windows卡住了 进入安全模式)
  • win7正在启动windows 卡住(win7正在启动windows卡住了 进入安全模式)
  • win7正在启动windows 卡住(win7正在启动windows卡住了 进入安全模式)
手机可以装电脑系统吗(手机可以装电脑系统吗怎么装)

答题公式1:手机可以通过数据线或无线连接的方式给电脑装系统。手机安装系统需要一定的技巧和软件支持,一般需要通过数据线或无线连接的方式与电脑连接,并下载相应的软件和系统文件进行安装。对于大部分手机用户来...