我需要想办法将那个数组:
[[639 190]
[ 44 1]
[ 71 4]
...,
[863 347]
[870 362]
[831 359]]
看起来像这样:
[[[639 190]]
[[ 44 1]]
[[ 71 4]]
...,
[[863 347]]
[[870 362]]
[[831 359]]]
我该怎么做?我是numpy的新手,但我需要它来进行我的科学实验。
我需要想办法将那个数组:
[[639 190]
[ 44 1]
[ 71 4]
...,
[863 347]
[870 362]
[831 359]]
看起来像这样:
[[[639 190]]
[[ 44 1]]
[[ 71 4]]
...,
[[863 347]]
[[870 362]]
[[831 359]]]
我该怎么做?我是numpy的新手,但我需要它来进行我的科学实验。
使用 None/np.newaxis
添加新轴 -
a[:,None,:] # Or simply a[:,None]
样例运行 -
In [222]: a = np.random.randint(0,9,(4,3))
In [223]: a
Out[223]:
array([[1, 6, 6],
[4, 4, 5],
[7, 4, 4],
[4, 1, 3]])
In [224]: a[:,None]
Out[224]:
array([[[1, 6, 6]],
[[4, 4, 5]],
[[7, 4, 4]],
[[4, 1, 3]]])
newaxis/None
之外,还有其他方法可以在NumPy中添加新维度。np.expand_dims(input_array, axis=1)