首页 > 解决方案 > 设置最后一个元素等于多维numpy数组中的第一个元素

问题描述

例如我有一个数组:

[[[[1 2][3 4]]][[[1 2][3 4]]]]

我如何设置 4 等于 1?我用了

array[-1][-1][-1][-1] = array[0][0][0][0]

但后来我得到了一个错误。有没有更通用的方法来做到这一点?

标签: pythonnumpy

解决方案


您可以通过更新扁平数组来“作弊”:

a = np.array([[[1,2],[3,4]],[[1,2],[3,4]]])

a.flat[-1] = a.flat[0]

a
array([[[1, 2],
        [3, 4]],

       [[1, 2],
        [3, 1]]])

推荐阅读