numpy是python标准库吗_Python3.1-标准库之Numpy

本文详细介绍了Python标准库中的Numpy,包括先决条件、基础知识、数组的创建与属性、基本操作、通用函数、索引与迭代、形状操作、复制与视图等内容。Numpy的主要对象是同质多维数组,提供了丰富的数学函数和操作,如创建全0、全1、随机数组,以及索引、切片和迭代等。此外,文章还讨论了广播规则和线性代数基础,是学习Numpy的重要参考资料。
摘要由CSDN通过智能技术生成

这系列用来介绍Python的标准库的支持Numpy部分。资料来自http://wiki.scipy.org/Tentative_NumPy_Tutorial,页面有许多链接,这里是直接翻译,所以会无法链接。可以大致看完该博文,再去看英文版。

1、先决条件

想要运行numpy,首先最小安装的有:Python、NumPy。:a、ipython 是一个增强的交互式python shell,它对于探索numpy的特性是非常方便的;b、matplotlib可以让你进行plot 图表;c、SciPy提供许多工作在numpy顶端的科学的例子。

2、基础知识

numpy的主要对象是同质多维数组。也就是在一个元素(通常是数字)表中,元素的类型都是相同的。其中可以通过正整数的元组来对元素进行索引。在numpy中数组的维度被称为轴(axes),轴的数量称为秩(rank)。例如,在3维空间中一个点[1,2,1]的坐标就是秩为1的数组,因为它只有一个轴。这个轴的长度为3。下面的例子中,数组的秩为2(因为是2维的)。第一个维度(轴)的大小是2,第二个维度的大小是3:

numpy的数组类被成为ndarray。别名为array。numpy.array与标准python库类array.array不一样,标准库类中的那个只能处理一维数组并且功能更少。ndarray对象的重要的属性有:

ndarray.ndim:数组的轴(维度)的数量。在python中,维度的数量通常被称为rank。

ndarray.shape:数组的维度。为一个整数元组,表示每个维度上的大小。对于一个n行m列的矩阵来说,shape就是(n,m)。shape元组的长度就是秩(或者维度的数量)ndim。

ndarray.size:数组的元素的总个数。这等于shape元素的乘积。

ndarray.dtype:用来描述数组中元素类型的对象。可以用标准python类型来创建或指定dtype;或者在后面,加上numpy的类型。numpy.int32;numpy.int16;numpy.float64等等

ndarray.itermsize:数组的每个元素的字节大小。例如,一个类型为float64的元素的数组itemsize 为8(=64/8),而一个complex32的数组itersize为4(=32/8)。该属性等价于ndarray.dtype.itemsize。

ndarray.data:该缓冲区包含了数组的实际元素。通常情况下,我们不需要使用这个属性,因为我们会使用索引的方式来访问数组中的元素。

1)例子

2)构建数组

有几种方法来构建数组。例如可以通过一个常规的python列表或者使用array函数的元组来构建。可以通过调用生成后数组的属性dtype来了解该数组的元素类型:

经常犯得的错误:调用array的时候,传递了多个数值参数,而不是使用单一的数字列表:

array会将序列的序列转换成2维的数组,序列的序列的序列会转换成3维的数组,等等:

数组的类型同样可以在创建的时侯显式指定:

通常来说,数组中元素的值在开始的时候是未知的,不过数组的大小是已知的。所以numpy提供几个函数在创建数组的时候对元素的值进行占位。这样就可以避免后续需要对数组进行动态增长的操作(数组的动态增长的代价较大)。函数zeros生成一个全为0的数组;函数ones生成一个全为1的数组,函数empty生成一个初始化内容为随机并且依赖于内存状态的数组。默认情况下,生成的数组的dtype是float64:

为了生成数字序列。numpy提供一个类似于range的函数,返回一个列表,参数为(起始,结束,步长):

当传递的参数是浮点数时,因为浮点数精度是有限的,所以通常不会有稳定的元素个数的保证。所以,使用函数linspace是一个更好的选择,因为我们可以对该函数指定需要创建多少个元素,参数为(起始,结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值