numpy.newaxis
numpy.newaxis
的工作方式及适用场合
简单地说,newaxis的作用是给现有的数组增加一个维度。例如:
- 1维数组将变为2维数组
- 2维数组将变为3维数组
- 3维数组将变为4维数组
- 4维数组将变为5维数组
等等。
我们在这里利用图示的方法解释一维数组通过添加新维度变为二维数组的过程:
- 一维数组在列方向(axis=0)进行广播变为二维数组:
- 一维数组在行方向(axis=1)进行广播变为二维数组:
当然,二维数组沿深度方向(axis=3)进行广播可以变为三维数组:
适用场合1:
当你想要将一个一维数组像上面图中所示一样,在行方向或列方向进行广播变为二维数组,你可能需要用到np.newaxis
。
示例代码:
# 创建一维数组
import numpy as np
arr = np.arange(4)
print('arr数组的维度为:{}'.format(arr.shape))
# 我们沿着第一维添加轴使其成为行向量
row_vec = arr[np.newaxis, :] # 也可写为arr[None, :]
print('row_vec数组的维度为:{}'.format(row_vec.shape