numpy
以下简称np
, np.newaxis的作用是增加原来数组的维度,比如原来是一个二维数组,通过使用np.newaxis
可以变成一个三维数组。同理一维数组可以变成二维数组,三维数组可以变成四维。
- 形状为
(5,)
的一维数组通过增加坐标轴变成二维数组
# 示例
# 一维数组变成二维,且增加的坐标轴位置不同
import numpy as np
import torch as t
pt = np.random.rand(5) # numpy.random.rand()根据指定维度生成一个各元素位于0-1之间的数组
print(pt.shape) # (5, )
pt_1_1 = pt[np.newaxis, :]
print(pt_1_1.shape) # (1,5)
pt_1_2 = pt[:, np.newaxis]
print(pt_1_2.shape) # (5, 1)
- 形状为
(3, 4)
的数组扩展维度成三维数组,形状为(3, 1, 4)
pt = np.random.rand(3,4) # numpy.random.rand()根据指定维度生成一个各元素位于0-1之间的数组
print(pt.shape) # (3, 4)
pt_1_1 = pt[:, np.newaxis, :]
print(pt_1_1.shape) # (3, 1, 4)
之前的元素pt[i, j] = pt_1_1[i, 0, j]
。