文章目录
NumPy 数组的维数称为秩 (rank),维度称为轴 (axis) ,一维数组的秩为 1,二维数组的秩为 2,以此类推。
在 NumPy中,轴 (axis) 一般是在超过一维数组时作用更大的属性:
- 一维数组时,axis=0
- 二维数组时,axis=0, 1
- N 维数组时,axis=0, 1, …, N
当对某一轴进行操作时,我们可以这样看待:
- 一维数组,axis=0 表示沿着第 0 轴进行操作,即跨列操作;
- 二维数组,axis=0 表示沿着第 0 轴进行操作,即跨行操作;axis=1 表示沿着第 1 轴进行操作,即跨列操作
- 三维数组,axis=0 表示沿着第 0 轴进行操作,即跨表操作;axis=1 表示沿着第 1 轴进行操作,即跨行操作;axis=2 表示沿着第 2 轴进行操作,即跨列操作
ndarray属性表
属性 | 说明 |
---|---|
ndarray.ndim | 秩 (rank),即数组的轴(维度)的个数 |
ndarray.shape | 数组形状,返回一个元组表示各个维度中元素的个数 |
ndarray.size | 数组元素的总数,相当于np.prod(ndarray.shape) |
ndarray.dtype | 数组中每个元素的数据类型和数据 (bit) 大小 |
ndarray.itemsize | 数组中每个元素的字节 (byte) 大小,1 byte=8 bit |
ndarray.flags | 数组的内存信息 |
ndarray.real | 数组元素的实部 |
ndarray.imag | 数组元素的虚部 |
ndarray.ndim
ndarray.ndim
返回秩 (rank),即数组的轴(维度)的个数
import numpy as np
a = np.arange(24)
print (a.ndim) # a 现只有一个维度
# 现在调整其大小
b = a.reshape(2,4,3) # b 现在拥有三个维度
print (b.ndim)
# 输出
1
3
ndarray.shape
ndarray.shape
数组形状,返回一个元组表示各个维度中元素的个数。比如,一个二维数组,其数组形状为 (行数, 列数)
import numpy as np
a=np.array([[1,2,3],[4,5,6]])
print(a.shape)
# 输出
(2, 3)
ndarray.shape
也可以用于调整数组结构,但要保证元素的总个数 (size) 不能变
import numpy as np
a=np.array([[1,2,3],[4,5,6]