【问题标题】:sum the first m elements of an array对数组的前 m 个元素求和
【发布时间】:2013-03-19 21:34:32
【问题描述】:

我有一个长度为 n 的数组。是否有函数可以让我计算这个数组的前 m 个元素的部分总和(m

我想到了这样的事情

sum(X,1:10) %returns the sum of the 10 first elements of the array

但这不起作用。 Sum 似乎只计算整个列、行或更高维度的等价物。

编辑:我想知道是否有 matlab 函数这样做 - 我可以自己编写一个程序,但它有可能会更慢并且可能会做一些奇怪的事情 :)

我的函数如下所示:

function[sum] = partialSum(X,m)
sum = 0;
for i = 1:m
    sum = sum + X(i);
end

【问题讨论】:

    标签: matlab


    【解决方案1】:

    不清楚你想要什么。如果它只是第一个 m 元素的总和,那么就是这样:

    result = sum(X(1:m));
    

    如果您想要部分和的序列,请使用cumsum() 而不是sum()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-09
      • 1970-01-01
      • 1970-01-01
      • 2021-07-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多