numpy矩阵

一 矩阵创建

(1)np.mat("a b c;e f g;h j k")

  (2)  np.array([[a,b,c],[e,f,g],[h,j,k]])

import numpy as np
a=np.mat('1 2 3;4 5 6;7 8 9')
b=np.array([[1,2,3],[4,5,6],[7,8,9]])
print(a)
print(b)

[[1 2 3]
 [4 5 6]
 [7 8 9]]
[[1 2 3]
 [4 5 6]
 [7 8 9]]

(3)复合阵 np.bamt("x y;z u")    ;分隔上下 

import numpy as np
a=np.mat('1 2 3;4 5 6;7 8 9')
b=np.array([[1,3,3],[4,5,6],[7,8,9]])
c=np.bmat('a b;a b')
print(c)

[[1 2 3 1 3 3]
 [4 5 6 4 5 6]
 [7 8 9 7 8 9]
 [1 2 3 1 3 3]
 [4 5 6 4 5 6]
 [7 8 9 7 8 9]]

二矩阵运算 

(1)乘法   * 各元素相乘         np.dot(x,y)矩阵乘法

import numpy as np
a=np.array([1,2])
b=np.array([[3],[4]])
c=a*b
d=b*a
e=np.dot(a,b)
print(a)
print(b)
print(c)
print(d)
print(e)


[1 2]
[[3]
 [4]]
[[3 6]
 [4 8]]
[[3 6]
 [4 8]]
[11]

(2)转置     b=a.T

import numpy as np
a=np.array([[1,2]])
b=a.T
print(a)
print(b)

[[1 2]]
[[1]
 [2]]

(3)求逆  b=a.I

import numpy as np
a=np.mat('1 2;3 5')
b=a.I
print(a)
print(b)


[[1 2]
 [3 5]]
[[-5.  2.]
 [ 3. -1.]]

(4)矩阵加法   a+b     np.add(a,b)

猜你喜欢

转载自blog.csdn.net/weixin_42394932/article/details/81121974