鱼C论坛

 找回密码
 立即注册
查看: 1600|回复: 4

求助python两个矩阵元素相乘

[复制链接]
发表于 2022-6-17 14:51:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import numpy as np #导入numpy库:用于矩阵运算
import numpy.matlib
m = 2
n = 3
d = np.array([[12, 23, 0], [5, 8, 4]])
b = np.mat([5])
theta = np.matlib.repmat(b,1,n)
a = np.matlib.repmat(theta,m,1)

print(d * a)

想问一下大佬们,为啥会出现这个错误:ValueError: shapes (2,3) and (2,3) not aligned: 3 (dim 1) != 2 (dim 0)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-17 15:42:38 From FishC Mobile | 显示全部楼层
矩阵相乘
(m*n 矩阵)*(n*p 矩阵)
n 必须相同
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-17 15:50:05 From FishC Mobile | 显示全部楼层
import numpy as np

A = np.array([[1, 2, 3], [4, 5, 6]])
B = np.array([[1, 2], [3, 4], [5, 6]])
C = np.dot(A, B)

print(C)
[[22 28]
 [49 64]]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-17 15:54:50 From FishC Mobile | 显示全部楼层
import numpy as np

A = np.mat([[1, 2, 3], [4, 5, 6]])
B = np.mat([[7, 8], [9, 10], [11, 12]])

print(A * B)
[[ 58  64]
 [139 154]]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-17 16:13:04 From FishC Mobile | 显示全部楼层
你的代码:
import numpy as np
import numpy.matlib

m = 2
n = 3

d = np.array([[12, 23, 0], [5, 8, 4]])
b = np.mat([5])

theta = np.matlib.repmat(b, 1, m) # <------ 注意这里
a = np.matlib.repmat(theta, n, 1) # <------ 注意这里

print(d * a)
[[175 175]
 [ 85  85]]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 06:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表