如何将 for 循环实现转换为 Octave 中的矢量化计算?

How can I convert for loop implementation into vectorized calculation in Octave?

我正在尝试开发代码以在逻辑回归中找到成本函数。我想用矢量化实现替换下面的 forloop 实现。

  for i = 1:m_theta
        sum_gr = sum(error.*X(:,i));
        grad_temp(i) = sum_gr/(m);
    end;

我该怎么做?有人可以帮忙吗?

假设error是一个向量,你可以简单地使用matrix-multiplication -

grad_temp = error.'*X/m