功能介绍
1、一个强大的N维数组对象Array;
2、比较成熟的(广播)函数库;
3、用于整合C/C++和Fortran代码的工具包;
4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。
array用法
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
名称 | 描述 |
---|---|
object | 数组或嵌套的数列 |
dtype | 数组元素的数据类型,可选 |
copy | 对象是否需要复制,可选 |
order | 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认) |
subok | 默认返回一个与基类类型一致的数组 |
ndmin | 指定生成数组的最小维度 |
#一维输出 import numpy as np a = np.array([1,2,3]) print (a) ->[1,2,3] # 二维输出 a = np.array([[1, 2], [3, 4]]) print (a) ->[[1, 2] [3,4]] # 最小维度 a = np.array([1, 2, 3,4,5], ndmin = 2) print (a) ->[[1, 2, 3, 4, 5]] # 参数 a = np.array([1, 2, 3], dtype = complex) print (a) ->[ 1.+0.j, 2.+0.j, 3.+0.j]
属性 | 说明 |
---|---|
ndarray.ndim | 秩,即轴的数量或维度的数量 |
ndarray.shape | 数组的维度,对于矩阵,n 行 m 列 |
ndarray.size | 数组元素的总个数,相当于 .shape 中 n*m 的值 |
ndarray.dtype | ndarray 对象的元素类型 |
ndarray.itemsize | ndarray 对象中每个元素的大小,以字节为单位 |
ndarray.flags | ndarray 对象的内存信息 |
ndarray.real | ndarray元素的实部 |
ndarray.imag | ndarray 元素的虚部 |
ndarray.data | 包含实际数组元素的缓冲区,由于一般通过数组的索引获取元素,所以通常不需要使用这个属性。 |
# ndim 用于返回数组的维数,等于秩。 import numpy as np a = np.arange(2) print(a.ndim) # a 现只有一个维度 # 现在调整其大小 b = a.reshape(2,4,3) # b 现在拥有三个维度 print (b.ndim) ->1 3 # shape 表示数组的维度,返回一个元组,这个元组的长度就是维度的数目,即 ndim 属性(秩)。比如,一个二维数组,其维度表示"行数"和"列数"。shape 也用于调整数组大小 a = np.array([[1,2,3],[4,5,6]]) print (a.shape) ->(2, 3) # shape调整数组大小 a = np.array([[1,2,3],[4,5,6]]) a.shape = (3,2) print (a) ->[[1 2] [3 4] [5 6]] # reshape调整数组大小 a = np.array([[1,2,3],[4,5,6]]) b = a.reshape(3,2) print (b) ->[[1 2] [3 4] [5 6]]
numpy.empty(shape, dtype = float, order = ‘C‘)
参数 | 描述 |
---|---|
shape | 数组形状 |
dtype | 数据类型,可选 |
order | 有"C"和"F"两个选项,分别代表,行优先和列优先,在计算机内存中的存储元素的顺序。 |
# 创建空数组 import numpy as np x = np.empty([3,2], dtype = int) print (x) ->[[ 6917529027641081856 5764616291768666155] [ 6917529027641081859 -5764598754299804209] [ 4497473538 844429428932120]] //数组元素为随机值,因为它们未初始化。
numpy.zeros(shape, dtype = float, order = ‘C‘)
参数 | 描述 |
---|---|
shape | 数组形状 |
dtype | 数据类型,可选 |
order | ‘C‘ 用于 C 的行数组,或者 ‘F‘ 用于 FORTRAN 的列数组 |
# 用0填充数组 # 默认为浮点数 x = np.zeros(5) print(x) # 设置类型为整数 y = np.zeros((5,), dtype = np.int) print(y) # 自定义类型 z = np.zeros((2,2), dtype = [(‘x‘, ‘i4‘), (‘y‘, ‘i4‘)]) print(z) ->[0. 0. 0. 0. 0.] [0 0 0 0 0] [[(0, 0) (0, 0)] [(0, 0) (0, 0)]]
【小白Python学习】numpy库和matplotlib库学习笔记(持续补充)
原文:https://www.cnblogs.com/serene-zou/p/12838067.html