Matlab数据处理之累积和函数cumsum | 您所在的位置:网站首页 › matllab求和 › Matlab数据处理之累积和函数cumsum |
文章目录 展开 cumsum函数常见用法cumsum函数语法说明cumsum函数实例向量的累积和矩阵中每列的累积和矩阵中每行的累积和逻辑输入的累积和反向累积求和包含 NaN 值的向量 4.7 (3)Matlab中,可以使用cumsum函数表示一组数据的累积和。累积和,从数据的第一个其大小不等于 1 的数组维度开始返回累积和。关于求和函数sum的相关介绍,可以参考:《Matlab数组求和函数sum的使用教程》。 ![]() 本文主要介绍cumsum函数的常见用法、语法说明,以及一些相关实例。cumsum函数的帮助文档如下: >> help cumsum cumsum Cumulative sum of elements. Y = cumsum(X) computes the cumulative sum along the first non-singleton dimension of X. Y is the same size as X. Y = cumsum(X,DIM) cumulates along the dimension specified by DIM. Y = cumsum(___,DIRECTION) cumulates in the direction specified by the string DIRECTION using any of the above syntaxes: 'forward' - (default) uses the forward direction, from beginning to end. 'reverse' - uses the reverse direction, from end to beginning. Example: If X = [0 1 2 3 4 5] cumsum(X,1) is [0 1 2 and cumsum(X,2) is [0 1 3 3 5 7] 3 7 12] cumsum(X,1,'reverse') is [3 5 7 and cumsum(X,2,'reverse') is [ 3 3 2 3 4 5] 12 9 5]cumsum函数常见用法B = cumsum(A) B = cumsum(A,dim) B = cumsum(___,direction) B = cumsum(___,nanflag)cumsum函数语法说明B = cumsum(A) 从 A 中的第一个其大小不等于 1 的数组维度开始返回 A 的累积和。 如果 A 是向量,则 cumsum(A) 返回包含 A 元素累积和的向量。如果 A 是矩阵,则 cumsum(A) 返回包含 A 每列的累积和的矩阵。如果 A 为多维数组,则 cumsum(A) 沿第一个非单一维运算。B = cumsum(A,dim) 返回沿维度 dim 的元素的累积和。例如,如果 A 是矩阵,则 cumsum(A,2) 返回每行的累积和。 B = cumsum(_,direction) 可选择性地使用上述任何语法指定方向。必须指定 A,也可以指定 dim。例如,cumsum(A,2,’reverse’) 通过从尾到头计算 A 的第二个维度返回其中各行的累积和。 B = cumsum(_,nanflag) 指定在上述任意语法的计算中包括还是忽略 NaN 值。cumsum(A,’includenan’) 会在计算中包括所有 NaN 值,而 cumsum(A,’omitnan’) 则忽略这些值。 cumsum函数实例向量的累积和计算从 1 到 5 的整数的累积和。元素 B(2) 是 A(1) 和 A(2) 的和,而 B(5) 是元素 A(1) 至 A(5) 的和。 >> A = 1:5; >> B = cumsum(A) B = 1 3 6 10 15矩阵中每列的累积和定义其元素与其线性索引对应的 3×3 矩阵。 >> A = [1 4 7; 2 5 8; 3 6 9] A = 1 4 7 2 5 8 3 6 9计算 A 的列的累积和。元素 B(5) 是 A(4) 和 A(5) 的和,而 B(9) 是 A(7)、A(8) 和 A(9) 的和。 >> B = cumsum(A) B = 1 4 7 3 9 15 6 15 24![]() 定义其元素与其线性索引对应的 2×3 矩阵。 >> A = [1 3 5; 2 4 6] A = 1 3 5 2 4 6计算 A 的行的累积和。元素 B(3) 是 A(1) 和 A(3) 的和,而 B(5) 是 A(1)、A(3) 和 A(5) 的和。 >> B = cumsum(A,2) B = 1 4 9 2 6 12逻辑输入的累积和创建一个逻辑值数组。 >> A = [true false true; true true false] A = 1 0 1 1 1 0计算 A 的行的累积和。 >> B = cumsum(A,2) B = 1 1 2 1 2 2输出的类型为 double。 >> class(B) ans = double![]() 创建一个包含介于 1 到 10 的随机整数的 3×3 的矩阵。 >> rng default; >> A = randi([1,10],3) A = 9 10 3 10 7 6 2 1 10沿各行计算累积和。指定 'reverse' 选项在各行中从右向左运行。结果的大小与 A 相同。 >> B = cumsum(A,2,'reverse') B = 22 13 3 23 13 6 13 11 10包含 NaN 值的向量创建一个包含 NaN 值的向量,并计算累积和。默认情况下,cumsum 包括 NaN 值。如果您在计算中包括 NaN 值,则只要在 A 中遇到第一个 NaN 值,累积和将立即成为 NaN。 >> A = [3 5 NaN 9 0 NaN]; >> B = cumsum(A) B = 3 8 NaN NaN NaN NaN您可以使用 'omitnan' 选项在累积和计算中忽略 NaN 值。 ![]() 版本过低,不支持这种用法,下面给出官方答案 >> B = cumsum(A,'omitnan') B = 1×6 3 8 8 17 17 17共计3人评分,平均4.7分 到目前为止还没有投票~ 很抱歉,这篇文章对您没有用! 让我们改善这篇文章! 告诉我们我们如何改善这篇文章? 原创文章,作者:古哥,转载需经过作者授权同意,并附上原文链接:https://iymark.com/program/matlab/cumsum-function-usage.html |
CopyRight 2018-2019 实验室设备网 版权所有 |