iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >NumPy怎么在Python中使用
  • 520
分享到

NumPy怎么在Python中使用

2023-06-16 00:06:51 520人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

NumPy怎么在python中使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。 介绍NumPy是Python数值计算最重要的基础包,大多数提供科学计算的包都是用

NumPy怎么在python中使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

 介绍

NumPy是Python数值计算最重要的基础包,大多数提供科学计算的包都是用NumPy的数组作为构建基础。NumPy本身并没有提供多么高级的数据分析功能,理解NumPy数组以及面向数组的计算,将有助于你更加高效地使用诸如pandas之类的工具

虽然NumPy提供了通用的数值数据处理的计算基础,但大多数读者可能还是想将Pandas作为统计和分析工作的基础,尤其是处理表格数据时。

NumPy的部分功能如下:

  • ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。

  •  用于对整组数据进行快速运算的标准数学函数(无需编写循环)。

  •  用于读写磁盘数据的工具以及用于操作内存映射文件的工具。

  •  线性代数、随机数生成以及傅里叶变换功能。

  •  用于集成由C、c++、Fortran等语言编写的代码的A C api

NumPy之于数值计算特别重要是因为它可以高效处理大数组的数据。这是因为:

  •  比起Python的内置序列,NumPy数组使用的内存更少。

  •  NumPy可以在整个数组上执行复杂的计算,而不需要Python的for循环。

使用下面格式约定,引入NumPy包:

import numpy as np

NumPy的ndarray:N维数组对象

NumPy最重要的是其N维数组对象(即ndarray),其中的所有元素必须是相同类型的。该对象是一个快速而灵活的大数据容器,可以利用这种数组对整块数据执行数学运算,其语法跟标量元素之间的运算一样。

创建ndarray

  •  使用np.array(list/tuple, dtype=np.float32)函数,产生一个新的含有传入数据的ndarray对象。

第一个参数为元组、列表(相同数据类型),第二个参数为ndarray数组中的数据类型。当第二个参数为空时,NumPy将根据数据情况指定一个类型。

返回值为[ ]形式,元素间由空格分割。

In [20]: arr1 = np.array([6, 7.5, 8, 0, 1])   #从列表创建  In [21]: pring(arr1) Out[21]: [ 6. ,  7.5,  8. ,  0. ,  1. ]     #NumPy根据数据情况,指定了float类型  In [23]: arr2 = np.array([[1, 2, 3, 4], [5, 6, 7, 8],(1.2 , 2.3)])  In [24]: pring(arr2)  Out[24]: [[1, 2, 3, 4] [5, 6, 7, 8] (1.2 , 2.3)]
  •  使用NumPy中的内置函数

np.arange(begin,end,step,dtype=np.float32):begin为元素起始值(包含),end为元素结束值(不包含),step为步长(默认值为1),dtype为元素类型。如果只有一个参数n,则为从0到n-1;如有有两个参数n和m,则为从n到m-1;

np.linspace(begin,end,number):创建包含number个元素的数组,并在指定的开始值(包含)和结束值(包含)之间平均间隔;

np.ones(shape):根据shape生成一个全1数组,shape是元组类型,比如(2,3);

np.zeros(shape):根据shape生成一个全0数组,shape是元组类型,比如(2,3,4);

np.full(shape,val):根据shape生成一个数组,每个元素值都是val;

np.eye(n):创建一个正方的n*n单位矩阵,对角线为1,其余为0;

np.ones_like(a):根据数组a的形状生成一个全1数组;

np.zeros_like(a):根据数组a的形状生成一个全0数组;

np.full_like(a,val):根据数组a的形状生成一个每个元素值都是val的数组;

np.concatenate() 将两个或多个数组合并成一个新的数组。

In [30]: arr3 = np.zeros((3, 6))  In [31]: print(arr3)  Out[30]: [[ 0.,  0.,  0.,  0.,  0.,  0.] [ 0.,  0.,  0.,  0.,  0.,  0.] [ 0.,  0.,  0.,  0.,  0.,  0.]]
  •  从磁盘读取数据创建ndarray数组,将ndarray数组保存到磁盘(大部分情况会使用pandas或其它工具加载文本或表格数据)

  np.load(fname)

  • fname : 文件名,以.npy为扩展名,压缩扩展名为.npz

  np.save(fname, array) 或 np.savez(fname, array)

  • fname : 文件名,以.npy为扩展名,压缩扩展名为.npz

  • array : 数组变量

ndarray数组对象的属性

  •  .ndim:秩,即轴的数量或维度的数量

  •  .shape:ndarray对象的尺度,对于矩阵,n行m列

  •  .size:ndarray对象元素的个数,相当于.shape中n*m的值

  •  .dtype:ndarray对象的元素类型

  •  .itemsize:ndarray对象中每个元素的大小,以字节为单位

ndarray数组对象的类型和维度变换

  •  .astype(np.float64):将ndarray数组元素从一个类型转换成另一个类型,返回一个新数组。如果将浮点数转换成整数,则小数部分将会被截取删除。(类型变换)

  •  .reshape(shape):不改变原数组元素,返回一个新的shape维度的数组(维度变换)

  •  .resize(shape):与.reshape()功能一致,但修改原数组(维度变换)

  •  .swapaxes(ax1,ax2) 将数组n个维度中两个维度进行调换(维度变换)

  •  .flatten():对数组进行降维,返回折叠后的一维数组,原数组不变(维度变换)

  •  .tolist():将N维数组转换成列表(维度变换)

ndarray数组的索引和切片

具体使用参考

  •  https://seancheney.gitbook.io/python-for-data-analysis-2nd/di-04-zhang-numpy-ji-chu-shu-zu-he-shi-liang-ji-suan#ji-ben-de-suo-yin-he-qie-pian

  •  Https://docs.scipy.org/doc/numpy/user/quickstart.html#indexing-slicing-and-iterating

  •  https://blog.csdn.net/zheng_weibin/article/details/79358986

ndarray数组的运算

  •  数组与标量之间的运算,都会作用于数组的每一个元素;

  •  大小相同的数组之间的任何算术运算,都会将运算应用到元素级;

  •  大小相同的数组之间的比较运算,都会将运算应用到元素级并生成布尔值数组;

  •  np.abs(arr)\np.fabs(arr):计算数组arr各元素的绝对值

  •  np.sqrt(arr):计算数组arr各元素的平方根

  •  np.square(arr):计算数组arr各元素的平方

  •  np.log(arr)\np.log10(arr)\np.log2(arr):计算数组arr各元素的自然对数、10底对数和2底对数

  •  np.ceil(arr)\np.floor(arr):计算数组arr各元素的ceiling值 或 floor值

  •  np.rint(arr) 计算数组arr各元素的四舍五入值

  •  np.modf(arr) 将数组arr各元素的小数和整数部分以两个独立数组形式返回

  •  np.cos(arr)\np.cosh(arr)\np.sin(arr)\np.sinh(arr)\np.tan(arr)\np.tanh(arr)计算数组arr各元素的普通型和双曲型三角函数

  •  np.exp(arr) 计算数组arr各元素的指数值

  •  np.sign(arr) 计算数组arr各元素的符号值,1(+), 0, ‐1(‐)

利用ndarray进行数据处理

排序

ndarray数组通过.sort()函数排序,多维数组时传入轴编号

NumPy的随机数函数

  •  np.random.rand(d0,d1,..,dn):根据d0‐dn创建随机数数组,浮点数,[0,1),均匀分布

  •  np.random.randn(d0,d1,..,dn):根据d0‐dn创建随机数数组,标准正态分布

  •  np.random.randint(low[,high,shape]):根据shape创建随机整数或整数数组,范围是[low, high)

  •  np.random.seed(s):随机数种子,s是给定的种

  •  np.random.shuffle(a):根据数组a的第1轴进行随排列,改变数组x

  •  np.random.permutation(a):根据数组a的第1轴产生一个新的乱序数组,不改变数组x

  •  np.random.choice(a[,size,replace,p]):从一维数组a中以概率p抽取元素,形成size形状新数组 replace表示是否可以重用元素,默认为False

  •  np.random.unifORM(low,high,size):产生具有均匀分布的数组,low起始值,high结束值,size形状

  •  np.random.normal(loc,scale,size):产生具有正态分布的数组,loc均值,scale标准差,size形状

  •  np.random.poisson(lam,size):产生具有泊松分布的数组,lam随机事件发生率,size形状

NumPy的统计类函数

  •  np.sum(a, axis=None):根据给定轴axis计算数组a相关元素之和,axis整数或元组

  •  np.mean(a, axis=None):根据给定轴axis计算数组a相关元素的期望,axis整数或元组

  •  np.average(a,axis=None,weights=None):根据给定轴axis计算数组a相关元素的加权平均值

  •  np.std(a, axis=None):根据给定轴axis计算数组a相关元素的标准差

  •  np.var(a, axis=None):根据给定轴axis计算数组a相关元素的方差

  •  np.min(a)\max(a):计算数组a中元素的最小值、最大值

  •  np.argmin(a)\argmax(a):计算数组a中元素最小值、最大值的降一维后下标

  •  np.unravel_index(index, shape):根据shape将一维下标index转换成多维下标

  •  np.ptp(a):计算数组a中元素最大值与最小值的差

  •  np.median(a):计算数组a中元素的中位数(中值)

NumPy的梯度函数

梯度:连续值之间的变化率,即斜率

XY坐标轴连续三个X坐标对应的Y轴值:a, b, c,其中,b的梯度是:(c‐a)/2

  •  np.gradient(f):计算数组f中元素的梯度,当f为多维时,返回每个维度梯度 

关于NumPy怎么在Python中使用问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网Python频道了解更多相关知识。

--结束END--

本文标题: NumPy怎么在Python中使用

本文链接: https://www.lsjlt.com/news/281942.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • NumPy怎么在Python中使用
    NumPy怎么在Python中使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。 介绍NumPy是Python数值计算最重要的基础包,大多数提供科学计算的包都是用...
    99+
    2023-06-16
  • 怎么在python中使用numpy合并数组
    本篇文章为大家展示了怎么在python中使用numpy合并数组,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Python几乎无...
    99+
    2023-06-14
  • 怎么在Python中使用numpy处理图片
    怎么在Python中使用numpy处理图片?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB前端...
    99+
    2023-06-14
  • 怎么在Python中使用numpy清洗数据
    这篇文章给大家介绍怎么在Python中使用numpy清洗数据,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用...
    99+
    2023-06-14
  • 怎么在Python中使用Numpy遍历数组
    本篇文章给大家分享的是有关怎么在Python中使用Numpy遍历数组,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python可以做什么Python是一种编程语言,内置了许多有...
    99+
    2023-06-14
  • 如何在Python中使用numpy?
    Python是一门强大的编程语言,它可以用于各种各样的应用,尤其是数据科学和机器学习领域。而在这些领域,一个非常重要的库就是numpy。numpy是Python中用于数值计算的一个基础库,它提供了高效的数组操作和数学函数,可以轻松地处理大量...
    99+
    2023-08-02
    响应 numy 关键字
  • 怎么在Python中使用numpy创建空数组
    怎么在Python中使用numpy创建空数组?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、问题描述:有一个shape为(308, 2)的二维数组,以及单独的...
    99+
    2023-06-15
  • NumPy是什么?如何在Python中使用它?
    NumPy是一种用于Python编程语言的强大的数学库,它提供了一组用于处理多维数组和矩阵的工具和函数。NumPy是Python科学计算的核心库之一,它为Python提供了高效的数值计算和科学计算支持。本文将介绍NumPy的基本概念,以及如...
    99+
    2023-09-11
    开发技术 numpy npm
  • 怎么在python中使用np.concatenate()函数拼接numpy数组
    这期内容当中小编将会给大家带来有关怎么在python中使用np.concatenate()函数拼接numpy数组,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python可以做什么Python是一种编程语...
    99+
    2023-06-14
  • python numpy中linspace函数怎么使用
    本篇内容主要讲解“python numpy中linspace函数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python numpy中linspace函数怎么使用”...
    99+
    2023-07-05
  • 为什么要在LeetCode中使用Python的NumPy库?
    近年来,人工智能和机器学习的兴起,让编程语言的选择变得更加重要。在算法和数据结构领域,LeetCode已经成为了一个非常受欢迎的学习平台,许多程序员在这里刷题、学习和交流。而在这个过程中,Python的NumPy库也成为了许多程序员喜爱的选...
    99+
    2023-06-22
    numy leetcode 文件
  • 怎么在python中安装numpy库
    在python中安装numpy库的方法:1.打开命令提示符窗口;2.使用pip命令安装numpy库;3.进入python解释器;4.使用import命令引入numpy库;具体步骤如下:首先,使用组件键“win+R”运行cmd,打开命令提示符...
    99+
    2024-04-02
  • Python常用函数中的NumPy怎么使用
    1. txt文件(1) 单位矩阵即主对角线上的元素均为1,其余元素均为0的正方形矩阵。在NumPy中可以用eye函数创建一个这样的二维数组,我们只需要给定一个参数,用于指定矩阵中1的元素个数。例如,创建3×3的数组:im...
    99+
    2023-05-14
    Python Numpy
  • 如何在 Python 中同时使用 shell 和 numpy?
    Python 是一种高级编程语言,它具有强大的数据处理和分析功能。同时,Python 还支持 shell 命令行操作。因此,对于需要同时使用 shell 和 numpy 的 Python 用户来说,如何在 Python 中同时使用 she...
    99+
    2023-06-27
    并发 shell numy
  • 如何在Linux中使用Python的numpy模块?
    在本文中,我们将介绍如何在Linux中使用Python的numpy模块。Numpy是Python中一个重要的科学计算库,它提供了高效的多维数组操作和数学函数,是科学计算和数据分析的重要工具。让我们开始吧! 安装numpy 在Linux中安装...
    99+
    2023-08-10
    numpy 日志 linux
  • 如何在Spring框架中使用Python的NumPy API?
    Spring框架是一款非常流行的Java开发框架,它提供了丰富的功能和组件,可以帮助开发者快速构建高质量的Java应用程序。而Python的NumPy API是一款非常强大的科学计算库,它提供了丰富的数学函数和数据结构,可以帮助开发者更加高...
    99+
    2023-09-26
    api numpy spring
  • Python 面试题:如何在数组中使用 NumPy?
    如果你是一个 Python 开发者,你一定知道 NumPy 这个库。NumPy 提供了一个强大的 n 维数组对象,能够让你在 Python 中高效地进行数值计算。在本篇文章中,我们将讨论如何在数组中使用 NumPy,同时提供一些实用的例子...
    99+
    2023-08-30
    面试 数组 numy
  • 如何在Go中使用NumPy?
    NumPy是Python中广泛使用的一个科学计算库,它提供了高效的数组运算和数学函数,使得Python在数据科学领域得到了广泛的应用。但是,NumPy并不仅限于Python语言,它也可以被其他编程语言使用。本文将介绍如何在Go语言中使用N...
    99+
    2023-09-08
    numpy apache 二维码
  • python中怎么使用pip命令安装numpy包
    在Python中使用pip命令安装numpy包,可以按照以下步骤进行: 打开终端或命令提示符窗口。 输入以下命令来安装num...
    99+
    2023-10-23
    python numpy
  • 怎么在python中利用numpy创建一个矩阵
    今天就跟大家聊聊有关怎么在python中利用numpy创建一个矩阵,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作