【问题标题】:cross product between vectors of different size [duplicate]不同大小的向量之间的叉积[重复]
【发布时间】:2019-03-25 21:21:33
【问题描述】:

我有两个向量a, b,形状分别为(10,), (26,)。 我需要找到这两者之间的叉积,结果必须是(10, 26) 的形状。我正在使用numpy.cross()

我尝试过整形然后计算叉积。但没有得到想要的形状。

【问题讨论】:

  • 抱歉结果应该是 shape(10,)
  • 我不确定在这种情况下你所说的交叉产品是什么意思。您的意思是您希望每个元素都是 a 中的元素 i 和 b 中的元素 j 的乘积?
  • 你的意思是outer product
  • @Sara123 不要将修复/附加信息放入 cmets,更新问题 instad。
  • np.cross 是针对大小为 2 或 3 维的数组的特殊函数,产生类似大小的数组。

标签: python python-3.x numpy


【解决方案1】:

假设我的解释是正确的(虽然我认为从技术上讲你不应该称之为叉积),这会给你一个元素乘法矩阵:

X = (a.reshape(-1,1) @ b.reshape(1,-1))

简而言之,您使用 a 作为列和 b 作为行,并将每个元素逐列相乘。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-17
    • 1970-01-01
    相关资源
    最近更新 更多