理系はおバカがちょうどいい

ママEは今日も何かと闘うよ!

Pythonメモ:Matrixへの代入

matlabと違いnumpyだと以下の代入ができるので便利。

 

a = np.zeros*1
x = [0,1,2]
y = [0,1,0]
a[x,y] = 1

 

Out[105]:
array([[ 1., 0., 0.],
[ 0., 1., 0.],
[ 1., 0., 0.]])

 

 これもできる

 

a = np.zeros*2
x = [0,1,2]
y = [0,1,0]
v = [10,10,30]
a[0,x,y] = v

 

Out[108]:
array([[[ 10., 0., 0.],
[ 0., 10., 0.],
[ 30., 0., 0.]],

[[ 0., 0., 0.],
[ 0., 0., 0.],
[ 0., 0., 0.]],

[[ 0., 0., 0.],
[ 0., 0., 0.],
[ 0., 0., 0.]]])

 

 

 

 

 

*1:3,3

*2:3,3,3