np.newaxis()函数用法详解

1. 介绍

np.newaxis 的功能是:增加新的维度。注意 np.newaxis 放的位置不同,产生的矩阵形状也不同。

x[:, np.newaxis] :放在后面,会给列上增加维度;

x[np.newaxis, :] :放在前面,会给行上增加维度;

用途: 通常用它将一维的数据转换成一个矩阵,这样就可以与其他矩阵进行相乘。

2. 举例

2.1 列方向增加维度

x 是一维数据,其 shape 是 4,可以看到通过在列方向上增加新维度,变成了 4 x 1 的矩阵,也就是在 shape 的后面发生了变化。

x = np.array([5, 6, 7, 8])
print(x.shape)
x_add = x[:, np.newaxis]
print(x_add.shape)
print(x_add)
>>>
(4,)
(4, 1)
[[5]
 [6]
 [7]
 [8]]

2.2 行方向增加维度

通过在行方向上增加新的维度,变成了 1 x 4 的矩阵,也就是在 shape 的前面发生了变化。

x = np.array([5, 6, 7, 8])
print(x.shape)

x_add = x[np.newaxis, :]
print(x_add.shape)
print(x_add)
>>>
(4,)
(1, 4)
[[5 6 7 8]]

2.3 对矩阵增加维度

x = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(x.shape)
x_add = x[:, np.newaxis]
print(x_add)
print(x_add.shape)
>>>
(2, 4)
[[[1 2 3 4]]
 [[5 6 7 8]]]
(2, 1, 4)

原文链接:https://blog.csdn.net/qq_51392112/article/details/129015223

猜你喜欢

转载自blog.csdn.net/fuhanghang/article/details/134948592