【问题标题】:Assigning a Matlab vector according to a function根据函数分配 Matlab 向量
【发布时间】:2015-02-21 18:02:16
【问题描述】:

我基本上想对以下内容进行矢量化:

vect_y = zeros(1,numel(vect_x);
for i = 1:numel(vect_x)
    vect_y = sum(vect_x(1:i));
end

这可能吗?例如,我尝试通过以下方式使用 arrayfun:

y = arrayfun(@(y) sum(y), vect_x(1:1), vect_x(1:2), ..., vect_x(1:n));

但这行不通,而且不干净。

编辑: 所以我现在知道 cumsum 解决了上述问题,但我很好奇我将如何为任何功能做到这一点。

【问题讨论】:

  • 看来你想做一个累计:cumsum.
  • 哇,太棒了!谢谢!!

标签: matlab vectorization


【解决方案1】:

你想要的可以直接用cumsum函数完成:

vect_y = cumsum(vect_x);

【讨论】:

    猜你喜欢
    • 2010-12-05
    • 1970-01-01
    • 2018-05-09
    • 1970-01-01
    • 1970-01-01
    • 2018-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多