本文实例讲述了python简单实现矩阵的乘,加,转置和逆运算。分享给大家供大家参考,具体如下:
使用python完成矩阵的乘,加,转置和逆:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# -*- coding:utf-8 -*- #矩阵的乘,加,转置和逆 #numpy库提供矩阵运算的功能 from numpy import * ; import numpy as np; #矩阵的创建(随机) data=mat(random.randint(10,size=(3,3))) data = mat([ [ 3 , 4 , 4 ], [ 4 , 9 , 7 ], [ 2 , 3 , 3 ] ]) #矩阵的乘: data_1 = mat([[ 1 ],[ 2 ],[ 3 ]]); # 3 x 3 矩阵与 3 x 1 矩阵相乘得 3 x 1 矩阵 text1 = data * data_1; print ( "矩阵的乘:" ) print (text1) #验证结果 #矩阵的加: data_2 = mat([[ 3 , 4 , 4 ],[ 4 , 9 , 7 ],[ 2 , 3 , 3 ]]) text2 = data + data_2 print ( "矩阵的加:" ) print (text2) #矩阵自加 #矩阵的转置:mat.T data_3 = data.T print ( "矩阵的转置:" ) print (data_3) #验证转置结果 #矩阵的逆:mat.I data_4 = data.I print ( "矩阵的逆:" ) print (data_4) #验证逆 |
运行结果:
矩阵的乘:
[[23]
[43]
[17]]
矩阵的加:
[[ 6 8 8]
[ 8 18 14]
[ 4 6 6]]
矩阵的转置:
[[3 4 2]
[4 9 3]
[4 7 3]]
矩阵的逆:
[[ 3.00000000e+00 2.22044605e-16 -4.00000000e+00]
[ 1.00000000e+00 5.00000000e-01 -2.50000000e+00]
[ -3.00000000e+00 -5.00000000e-01 5.50000000e+00]]
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://www.cnblogs.com/double-points/p/10834566.html