4
我是Numpy的新手,想要替换矩阵的一部分。例如,我有两个矩阵,A,B由numpy生成用numpy中的另一个小矩阵替换矩阵的子部分
In [333]: A = ones((5,5))
In [334]: A
Out[334]:
array([[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.]])
In [335]: B
Out[335]:
array([[ 0.1, 0.2],
[ 0.3, 0.4]])
最后,我想使A成为下面的矩阵。
In [336]: A
Out[336]:
array([[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 0.1, 0.2],
[ 1., 1., 1., 0.3, 0.4]])
和/或以下
In [336]: A
Out[336]:
array([[ 1., 1., 1., 0.1, 0.2],
[ 1., 1., 1., 0.3, 0.4],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.]])
我试图像下面,但没有奏效。我没有任何想法,现在:(
A[[0,1],:][:,[3,4]] = B
,甚至我试着像
A[[0,1],:][:,[3,4]] = 1
检查四个单元是否被更改或不。你有什么想法?
什么非连续的行/ COLS?也就是说,如果OP想要'A [[0,3],:] [:,[3,4]]'? – Tgsmith61591 2017-09-08 18:13:26