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