一、数组的运算
import numpy as np
a=np.array([[1,2,3],[4,5,6],[7,8,9]])
a=[[1,2,3]
[4,5,6]
[7,8,9]]
b=np.array([[9,8,7],[6,5,4],[3,2,1]])
b=[[9,8,7]
[6,5,4]
[3,2,1]]
c=a+b
c=[[10 10 10]
[10 10 10]
[10 10 10]]
c=a*3
c=[[ 3 6 9]
[12 15 18]
[21 24 27]]
c=a*b
c=[[ 9 16 21]
[24 25 24]
[21 16 9]]
c=a*b
c=[[ 30 24 18]
[ 84 69 54]
[138 114 90]]
c=a.reshape(1,9)
c=[[1 2 3 4 5 6 7 8 9]]
c=np.transpose(a)
c=[[1 4 7]
[2 5 8]
[3 6 9]]
二、矩阵的运算
a=np.mat(a)
b=np.mat(b)
c=a.T
c=[[1 4 7]
[2 5 8]
[3 6 9]]
c=a.H
c=[[1 4 7]
[2 5 8]
[3 6 9]]
c=a.I
c=[[ 3.15251974e+15 -6.30503948e+15 3.15251974e+15]
[-6.30503948e+15 1.26100790e+16 -6.30503948e+15]
[ 3.15251974e+15 -6.30503948e+15 3.15251974e+15]]
c=np.linalg.inv(a)
c=[[ 3.15251974e+15 -6.30503948e+15 3.15251974e+15]
[-6.30503948e+15 1.26100790e+16 -6.30503948e+15]
[ 3.15251974e+15 -6.30503948e+15 3.15251974e+15]]
三、相互转化
array_to_matrix = np.mat(my_array)
matrix_to_array = np.array(my_matrix)
四、切片
a=[[[9, 8, 7], [6, 5, 4], [3, 2, 1]], [[19, 18, 17], [16, 15, 14], [13, 12, 11]], [[29, 28, 27], [26, 25, 24], [23, 22, 21]]]
a[1,:]=[[19 18 17]
[16 15 14]
[13 12 11]]
a[1,1,:]=[16 15 14]
a[1,1,1]=15
a[:1:]=[[[9 8 7]
[6 5 4]
[3 2 1]]]
a[:,1:]=[[[ 6 5 4]
[ 3 2 1]]
[[16 15 14]
[13 12 11]]
[[26 25 24]
[23 22 21]]]
a[:,1,1]=[ 5 15 25]
a[0:2,0:2,:]=[[[ 9 8 7]
[ 6 5 4]]
[[19 18 17]
[16 15 14]]]
a[::2]=
[[[9, 8, 7], [6, 5, 4], [3, 2, 1]],
[[29, 28, 27], [26, 25, 24], [23, 22, 21]]]
a[1::2]=
[[[19, 18, 17], [16, 15, 14], [13, 12, 11]]]
五、组合
a=np.array([[1,2,3],[4,5,6],[7,8,9]])
b=np.array([0,0,0])
c=np.hstack((a,b.reshape(3,1)))
c=[[1 2 3 0]
[4 5 6 0]
[7 8 9 0]]
b=np.vstack((a,b))
c=[[1 2 3]
[4 5 6]
[7 8 9]
[0 0 0]]