欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python基础——numpy库(1)

程序员文章站 2022-06-01 12:57:05
...

NUMPY介绍

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库(这一点上是超过list的,针对数组运算的数学函数库可以简化运损,也因此有数组存在的意义)。NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合。下面介绍关于ndarray的相关内容。

numpy数组属性

NumPy 数组的维数称为秩(rank)秩就是轴的数量(也因此是一个标量),即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推。关于轴、秩和维度,这篇文章讲述的非常详细:https://blog.csdn.net/weixin_40974922/article/details/93496508.粘贴到这里供大家学习参考。简而言之就是,轴是坐标轴的轴线(因此可以契合维度,一维二维三维等等),而秩是一个标量,代表轴的个数(维度数)

然后就是数组的组成部分。ndarray本质是一个对象,是在array的实例。

创建数组以及相关操作

简单了解数组的属性之后,需要知道的就是如何创建数组,以及后续的操作。
创建数组的方式大致有三种:numpy.empty,numpy.zeros和 numpy.ones。同时,ndarray本质是一个对象,是array的实例。因此最直接的创建方法,就是调用array来创建。

import numpy as np
a = np.array([(1,2),(2,3)])
print(a)

输出结果:

[[1 2]
 [2 3]]

而数组中很可能会包含不同数据类型,比如float、int(以及8位、64位)、complex等等,因此我们需要一个成员来表示数组的内容类型。这也就是dtype。
原型:numpy.dtype(object, align, copy)

object - 要转换为的数据类型对象
align - 如果为 true,填充字段使其类似 C 的结构体。
copy - 复制 dtype 对象 ,如果为 false,则是对内置数据类型对象的引用

使用方法如下:

dt = np.dtype(int)
a = np.array([(1.2,2.3),(3.3,4.0)],dtype = dt)
print(a)

输出结果:

[[1 2]
 [3 4]]

不难看出,dtype就是ndarray中的一部分,用来指示数组的数据类型。下面正式介绍三种创建数组的方式。

numpy.empty

方法如其名,创建出的数组是未初始化的数组(并不是0)。
方法原型:numpy.empty(shape, dtype = float, order = 'C')
shape是数组的规模(先行后列),数据类型以及行优先和列优先,即在计算机内存中的存储元素的顺序。(C是列)
代码如下:

a = np.empty([2,3])
print(a)

输出结果:

[[ 1.18527887e-311 -1.42667368e-210  1.18527887e-311]
 [ 1.18527887e-311  3.93701730e+094  1.18527887e-311]]

numpy.zeros

原型:numpy.zeros(shape, dtype = float, order = 'C')

a = np.zeros([2,3])
print(a)
[[0. 0. 0.]
 [0. 0. 0.]

numpy.ones

原型:numpy.ones(shape, dtype = None, order = 'C')

a = np.ones([2,3])
print(a)
[[1. 1. 1.]
 [1. 1. 1.]]
相关标签: python基础 python