如何用另一个数组[numpy]替换数组的一部分

时间:2016-05-04 05:00:32

标签: python arrays python-3.x numpy

我试图用另一个数组替换数组的一部分,如下所示:

data[1:-1,1:-1,1] = tmp_data

data[1:-1,1:-1,1]tmp_data的大小相同。我收到此错误消息:

TypeError: 'tuple' object does not support item assignment

为什么会这样?我该如何解决?感谢

1 个答案:

答案 0 :(得分:-1)

两个阵列的大小相同。 数据[1:-1,1:-1,1] = tmp_data将无法解决。 你需要提供将固定到赋值索引的tmp_data的大小。

>>> import numpy as np
>>> a = np.arange(20).reshape(2,2, 5)
>>> b = np.arange(21,41).reshape(2,2, 5)
>>> a[0:1,0:1,1]=b[0:1,0:1,1]
>>> a
array([[[ 0, 22,  2,  3,  4],
        [ 5,  6,  7,  8,  9]],

       [[10, 11, 12, 13, 14],
        [15, 16, 17, 18, 19]]])