gpt4 book ai didi

python - 列向量和矩阵之间的区别

转载 作者:太空宇宙 更新时间:2023-11-03 23:56:42 24 4
gpt4 key购买 nike

大家早上好我有一个列向量

vec=np.array([15.1,7.9,4.5,12.8,10.5],ndmin = 2)   

和一个矩阵

mt = np.matrix([[1,35.5,1.23],[1,40.8,1.89],[1,30.2,1.55],[1,4.3,1.18], [1,10.7,1.68]])    

如果我尝试减去向量和矩阵喜欢

 np.subtract(vec,mt)

结果在数学上是错误的:

array([[ 14.1 , -20.4 ,  13.87],
[ 6.9 , -32.9 , 6.01],
[ 3.5 , -25.7 , 2.95],
[ 11.8 , 8.5 , 11.62],
[ 9.5 , -0.2 , 8.82]])

mt 的所有列的值都被减去,而不仅仅是第一个我想得到这个结果

array([[ 14.1  , 35.5 ,  1.23],
[ 6.9 , 40.8 , 1.89],
[ 3.5 , 30.2 , 1.55],
[ 11.8 , 4.3 , 1.18],
[ 9.5 , 10.7 , 1.68]])

我该如何解决?感谢所有:)

最佳答案

切片和减法-

  • T属性是数组的转置。

例如

import numpy as np

vec=np.array([15.1,7.9,4.5,12.8,10.5],ndmin = 2)
mt = np.matrix([[1,35.5,1.23],[1,40.8,1.89],[1,30.2,1.55],[1,4.3,1.18], [1,10.7,1.68]])

mt[..., 0] = vec.T - mt[..., 0]
#or
#mt.T[0] = np.subtract(vec, mt.T[0])

print(mt)

O/P:

[[14.1  35.5   1.23]
[ 6.9 40.8 1.89]
[ 3.5 30.2 1.55]
[11.8 4.3 1.18]
[ 9.5 10.7 1.68]]

关于python - 列向量和矩阵之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57429007/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com