【问题标题】:multiplication of Nx1 column vector with Nx3 matrixNx1 列向量与 Nx3 矩阵的乘法
【发布时间】:2013-09-12 07:58:25
【问题描述】:

我有一个列向量 Nx1 和一个矩阵 Nx3,我想将 Nx1 的第一个元素与 Nx3 矩阵的第一行的所有元素相乘,并将第二个元素与第二行的所有元素相乘Nx3 等等。 使用 for 循环可以做到这一点。 有没有其他办法呢。

谢谢

【问题讨论】:

    标签: matlab matrix


    【解决方案1】:

    假设An-by-3 并且xn-by-1 向量。
    非常有趣:

    >> myLongExpectedResult = bsxfun( @times, A, x );
    

    【讨论】:

      【解决方案2】:

      我认为更快的解决方案如下:

      C = A.*[B,B,B];
      

      其中A 是 Nx3 矩阵,B 是 Nx1 矩阵

      【讨论】:

      • 这是一个非常简单的想法,在我看到答案之前我的想法完全一样。
      • 与 bsxfun 相比,它不仅更简单,而且只需要 0.06% 的评估时间。
      猜你喜欢
      • 1970-01-01
      • 2011-08-06
      • 2018-11-06
      • 1970-01-01
      • 2020-03-16
      • 2020-10-29
      • 1970-01-01
      • 1970-01-01
      • 2021-12-04
      相关资源
      最近更新 更多