Numpy库中有不少与索引相关的方法或函数要求索引的维度与输入数组的维度一致,比如函数take_along_axis()和函数put_along_axis()都要求这样。
所以本篇博文记录下扩维(维度扩展)的操作示例代码,以便自己和大家需要时方便取用。
第01种方法:使用函数expand_dims()
import numpy as np
A = np.array([[10, 30, 20], [60, 40, 50]])
A_max_index = np.argmax(A, axis=1)
A_max_index_expand = np.expand_dims(A_max_index, axis=1)
运行结果如下:


第02种方法:使用None对象
示例代码如下:
import numpy as np
A = np.array([[10, 30, 20], [60, 40, 50]])
A_max_index = np.argmax(A, axis=1)
A_max_index_expand = A_max_index[:, None]
运行结果如下:


这篇博文介绍了在Numpy中如何进行数组扩维,以满足函数如take_along_axis()和put_along_axis()对索引维度的要求。文章通过两种方法展示了扩维技巧:1) 使用expand_dims()函数;2) 利用None对象。示例代码清晰地演示了这两种方法的使用,并给出了相应的运行结果。

被折叠的 条评论
为什么被折叠?



