python矩阵乘法和转置_关于python中的矩阵乘法(array和mat类型)

一、关于python中的矩阵乘法,我们一般有两种数据格式可以实现:np.array()类型和np.mat()类型;

对于这两种数据类型均有三种操作方式:

(1)乘号 *

(2)np.dot()

(3)np.multiply()

而这三种操作方式在操作这两种数据格式时又有点区别,下面一一列出来:

import numpy as np

#np.array() type

#1. np.dot()

a = np.array([[1 , 2] , [3 , 4]] , dtype = np.float)

b = np.array([[1 , 2] , [3 , 4]] , dtype = np.float)

c = np.dot(a , b)

print(c)

#output:[[ 7. 10.],[ 15. 22.]]

#2. *

d = a * b

print(d)

#output:[[ 1. 4.],[ 9. 16.]]

#3. np.multiply()

e = np.multiply(a , b)

print(e)

#output:[[ 1. 4.],[ 9. 16.]]

#np.mat() type

#4. *

A = np.mat([[1 , 2] , [3 , 4]] , dtype = np.float)

B = np.mat([[1 , 2] , [3 , 4]] , dtype = np.float)

C = A * B

print(C)

#output:[[ 7. 10.],[ 15. 22.]]

#5. np.dot()

D = np.dot(A , B)

print(D)

#output:[[ 7. 10.],[ 15. 22.]]

#6. np.multiply()

E = np.multiply(A , B)

print(E)

#output:[[ 1. 4.],[ 9. 16.]]

# np.mat() * np.array()

F = A * a;

print(F)

#output:[[ 7. 10.],[ 15. 22.]]

由上面的代码可以总结如下:

(1)np.dot()对于这两种数据格式均为矩阵乘法;

(2)np.multiply()对于这两种数据格式均为按元素相乘;

(3)符号“*”对于array类型是矩阵乘法,对于mat类型是按元素类型相乘,而当一个array类型乘上一个mat类型时,则为矩阵乘法;

二、pytorch中的乘法:

(1)矩阵相乘:torch.mm();

(2)对应元素点乘:torch.mul();

python中的矩阵、多维数组----numpy

https://docs.scipy.org/doc/numpy-dev/user/quickstart.html  (numpy官网一些教程) numpy教程:数组创建 python中的矩阵.多维数 ...

python中的list和array的不同之处 2

版权声明:本文为博主非原创文章,未经博主允许可以转载.     Python中的list和array的不同之处 python中的list是python的内置数据类型,list中的数据类不必相同的,而a ...

[转]Python中的矩阵转置

Python中的矩阵转置 via 需求: 你需要转置一个二维数组,将行列互换. 讨论: 你需要确保该数组的行列数都是相同的.比如: arr = [[1, 2, 3], [4, 5, 6], [7, 8 ...

python中的list和array的不同之处 及转换

python中的list和array的不同之处list是列表,可以通过索引查找数值,但是不能对整个列表进行数值运算 In [96]: b=[1,2] In [97]: b[1]Out[97]: 2In ...

Python中,如何初始化不同的变量类型为空值

参考文章  Python中,如何初始化不同的变量类型为空值 常见的数字,字符,很简单,不多解释. 列表List的其值是[x,y,z]的形式 字典Dictionary的值是{x:a, y:b, z:c} ...

python中的矩阵、多维数组

2. 创建一般的多维数组 import numpy as np a = np.array([1,2,3], dtype=int)  # 创建1*3维数组   array([1,2,3]) type(a ...

2.python中的矩阵、多维数组----numpy

最近在将一个算法由matlab转成python,初学python,很多地方还不熟悉,总体感觉就是上手容易,实际上很优雅地用python还是蛮难的.目前为止,觉得就算法仿真研究而言,还是matlab用得 ...

Python中的矩阵、多维数组:Numpy

Numpy 是Python中科学计算的核心库.它提供一个高性能多维数据对象,以及操作这个对象的工具.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对 ...

python中的list和array的不同之处

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值