在MATLAB中,`sum` 函数用于计算数组或矩阵中元素的总和。它是一个多参数函数,可以根据不同的参数来指定如何进行求和操作。以下是`sum`函数的一些基本用法和示例:
基本用法
1. 计算数组或矩阵的元素总和。
A = [1 2 3; 4 5 6];
sum(A)
这个例子会返回矩阵`A`中所有元素的总和,即`21`。
2. 计算数组或矩阵指定维度的元素总和。
```MATLAB
A = [1 2 3; 4 5 6];
sum(A, 2)
```
这个例子会返回矩阵`A`中每一列元素的总和,即`[6 12]`。
参数
- `A`:输入数组或矩阵。
- `dim`:指定沿哪个维度进行求和。例如,`sum(A, 2)`沿第二维度(列)进行求和,`sum(A, 1)`沿第一维度(行)进行求和。
- `vecdim`:指定沿多个维度进行求和。这是一个向量,其中的元素表示求和的维度。
- `nanflag`:指定是否包含或省略数组中的`NaN`值。`'omitnan'`会忽略`NaN`值,`'includenan'`会包括`NaN`值。
- `outtype`:指定输出数据类型。可以是`'default'`、`'double'`或`'native'`,决定运算采用的数据类型。
示例
1. 计算向量元素的总和。
A = [12 3];
sum(A)
结果为`6`。
2. 计算矩阵列总和。
A = [1 2; 3 4];
sum(A, 2)
结果为`[4 8]`。
3. 计算矩阵行总和。
A = [1 2; 3 4];
sum(A, 1)
结果为`[3 7]`。
4. 计算多维数组的总和。
A = reshape(1:8, [2, 2, 2]);
sum(A)
结果为`36`。
5. 忽略`NaN`值。
A = [1 2 3; 4 nan 6];
sum(A, 'omitnan')
结果为`16`因为` NaN`值被忽略了。
结语
`sum`函数在MATLAB中是一个非常强大的工具,适用于各种数组和矩阵的求和操作。通过灵活运用不同的参数,可以实现对数据的不同维度进行求和,从而满足不同的数据分析需求。