python基础——numpy库(1)
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.]]
上一篇: 树莓派直接连接笔记本电脑方法