【问题标题】:How to express in numpy the sum of 1 row vector and 1 column vector (octave)如何在 numpy 中表示 1 个行向量和 1 个列向量的总和(八度)
【发布时间】:2020-12-18 01:39:05
【问题描述】:

octave 语法允许“添加”行向量和列向量来生成矩阵:

 3 * [1:4] + 4 * [1:4]'

此代码构建以下矩阵:

    7   10   13   16
   11   14   17   20
   15   18   21   24
   19   22   25   28

numpy 有没有类似的方法?

【问题讨论】:

    标签: matlab numpy octave


    【解决方案1】:

    你可以使用广播:

    3*np.arange(1,5) + 4*np.arange(1,5)[:,None]
    

    另一种方法是:

    np.add.outer(4*np.arange(1,5), 3*np.arange(1,5))
    

    结果输出是:

     7   10   13   16
    11   14   17   20
    15   18   21   24
    19   22   25   28
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多