网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

python矩阵点乘函数,python的矩阵乘法

python实现矩阵乘法的方法

python实现矩阵乘法的方法

创新互联建站从2013年成立,先为桐柏等服务建站,桐柏等地企业,进行企业商务咨询服务。为桐柏企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

本文实例讲述了python实现矩阵乘法的方法。分享给大家供大家参考。

具体实现方法如下:

def matrixMul(A, B):

res = [[0] * len(B[0]) for i in range(len(A))]

for i in range(len(A)):

for j in range(len(B[0])):

for k in range(len(B)):

res[i][j] += A[i][k] * B[k][j]

return res

def matrixMul2(A, B):

return [[sum(a * b for a, b in zip(a, b)) for b in zip(*B)] for a in A]

a = [[1,2], [3,4], [5,6], [7,8]]

b = [[1,2,3,4], [5,6,7,8]]

print matrixMul(a,b)

print matrixMul(b,a)

print "-"*90

print matrixMul2(a,b)

print matrixMul2(b,a)

print "-"*90

from numpy import dot

print map(list,dot(a,b))

print map(list,dot(b,a))

#Out:

#[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]

#[[50, 60], [114, 140]]

#------------------------------------------------------------------------

#[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]

#[[50, 60], [114, 140]]

#------------------------------------------------------------------------

#[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]

#[[50, 60], [114, 140]]

希望本文所述对大家的Python程序设计有所帮助。

求问如何在python中实现矩阵的点乘绯yth

python3.5引入了一个新的语法@来表示矩阵乘法,但标准库内并没有使用它的地方,numpy中可以使用。

python里x=randn mat=x.T.dot 是求什么

x=randn这个写法是不对的。

randn是numpy里的一个生成随机array的函数。

比如说要生成一个三行两列的随机array,可以这样写:

import numpy

x = numpy.random.randn(3,2)

像这样:

后面这个mat=x.T.dot(...)是先求这个3*3矩阵的转置(.T),再求与点积(.dot)

点积就是矩阵各个对应元素相乘, 这个时候要求两个矩阵必须同样大小。

其实可以分步来的,就知道做了什么运算了。

像这样:

dot(2)是点乘常数就不说了,

那个x.T.dot([1,2,3])就是x.T的

1*1+2*2+3*3=14

2*1+3*2+4*3=20

懂了木有 =。=

在python3里怎么实现两个矩阵相乘

def mmult(a,b):

zip_b = zip(*b)

return [[sum(ele_a*ele_b for ele_a, ele_b in zip(row_a, col_b))

for col_b in zip_b] for row_a in a]

x = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]]

y = [[1,2],[1,2],[3,4]]

print(mmult(x,y))

或者可以直接用numpy

import numpy as np # I want to check my solution with numpy

mx = np.matrix(x)

my = np.matrix(y)

print(mx * my)


网站栏目:python矩阵点乘函数,python的矩阵乘法
文章起源:http://bjjierui.cn/article/hcgsip.html

其他资讯