优草派 > Python

python能够进行矩阵运算吗?python如何进行矩阵运算

陈立鑫         优草派

许多学习python的朋友想问,python可以矩阵运算吗?python如何进行矩阵运算等等,下面让我们一起来学习python能不能矩阵运算和python如何进行矩阵运算的。

python能够进行矩阵运算吗?python如何进行矩阵运算

Python它本身是不支持矩阵运算的,如果想要在python上来进行矩阵运算的话,一般两个方法:

方法一:自己用二维列表定义矩阵,然后自己写矩阵基本运算的函数,这个方法有点事倍功半的意思,所以一般不采用。

方法二:是使用numpy库。python的numpy库提供矩阵运算的功能,因此我们在需要矩阵运算的时候,需要导入numpy的包。

那么让我们来看看如何将numpy导入和使用

from numpy import *;#导入numpy的库函数

import numpy as np; #这个方式使用numpy的函数时,需要以np.开头。

想要进行矩阵式运算的话,首先需要矩阵的创建

矩阵由一维或二维数据创建:

from numpy import *
>>> a1=array([1,2,3])
>>> a1
array([1, 2, 3])
>>> a1=mat(a1)
>>> a1
matrix([[1, 2, 3]])
>>> shape(a1)
(1, 3)
>>> b=matrix([1,2,3])
>>> shape(b)
(1, 3)

知道了如何创建矩阵后,我们就可以来进行常见的矩阵运算了,下面我们来看几个常见的矩阵运算案例;

案例一:矩阵对应元素相乘

>>>a1=mat([1,1]);
>>>a2=mat([2,2]);
>>>a3=multiply(a1,a2)
>>> a3
matrix([[2, 2]])

multiply()函数:数组和矩阵对应位置相乘,输出与相乘数组/矩阵的大小一致

案例二:矩阵相乘

>>>a1=mat([1,2]);      
>>>a2=mat([[1],[2]]);
>>>a3=a1*a2 #1*2的矩阵乘以2*1的矩阵,得到1*1的矩阵
>>> a3
matrix([[5]])

案例三:矩阵求逆

>>>a1=mat(eye(2,2)*0.5)
>>> a1
matrix([[ 0.5,  0. ],
        [ 0. ,  0.5]])
>>>a2=a1.I  #求矩阵matrix([[0.5,0],[0,0.5]])的逆矩阵
>>> a2
matrix([[ 2.,  0.],
        [ 0.,  2.]])

案例四:计算每一列、行的和

>>>a2=a1.sum(axis=0) #列和,这里得到的是1*2的矩阵
>>> a2
matrix([[7, 6]])
>>>a3=a1.sum(axis=1) #行和,这里得到的是3*1的矩阵
>>> a3
matrix([[2],
        [5],
        [6]])
>>>a4=sum(a1[1,:])  #计算第一行所有列的和,这里得到的是一个数值
>>> a4
5                    #第0行:1+1;第2行:2+3;第3行:4+2

案例五:矩阵点乘

>>>a1=mat([2,2]);
>>>a2=a1*2
>>>a2
matrix([[4, 4]])

案例六:矩阵转置

>>> a1=mat([[1,1],[0,0]])
>>> a1
matrix([[1, 1],
        [0, 0]])
>>> a2=a1.T
>>> a2
matrix([[1, 0],
        [1, 0]])
  • 微信好友

  • 朋友圈

  • 新浪微博

  • QQ空间

  • 复制链接

取消
5天短视频训练营
新手入门剪辑课程,零基础也能学
分享变现渠道,助你兼职赚钱
限时特惠:0元
立即抢
新手剪辑课程 (精心挑选,简单易学)
第一课
新手如何学剪辑视频? 开始学习
第二课
短视频剪辑培训班速成是真的吗? 开始学习
第三课
不需要付费的视频剪辑软件有哪些? 开始学习
第四课
手机剪辑app哪个好? 开始学习
第五课
如何做短视频剪辑赚钱? 开始学习
第六课
视频剪辑接单网站APP有哪些? 开始学习
第七课
哪里可以学短视频运营? 开始学习
第八课
做短视频运营需要会什么? 开始学习
【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。

客服热线:0731-85127885

湘ICP备19005950号-1  

工商营业执照信息

违法和不良信息举报

举报电话:0731-85127885 举报邮箱:tousu@csai.cn

优草派  版权所有 © 2024