📜  MATLAB 中的均值函数(1)

📅  最后修改于: 2023-12-03 15:32:50.862000             🧑  作者: Mango

MATLAB 中的均值函数

在 MATLAB 中,我们可以使用 mean 函数来计算一个向量或矩阵的均值。均值也被称为平均值,表示将一组数字相加后除以数字的数量得到的结果。均值函数的语法如下:

A = mean(X, dim)

其中,X 是一个向量或矩阵,dim 是一个整数,指定要计算均值的维度。如果 X 是一个向量,则 dim 应该省略或设置为 1。如果 X 是一个矩阵,则可以通过指定 dim 的值来计算每一行或每一列的均值。

计算向量均值

让我们看一个向量的例子。

x = [2, 4, 6, 8, 10];
avg = mean(x);
disp(avg);  % 输出 6

我们将向量 x 中的数字相加,然后将结果除以 5 (数字的数量),得到均值 6。

计算矩阵均值

现在让我们看一个矩阵的例子。

A = [1, 2, 3; 4, 5, 6; 7, 8, 9];
avg_row = mean(A, 1);
disp(avg_row);  % 输出 [4, 5, 6]

我们将矩阵 A 的每一列相加,并将结果除以行数 3,得到每一列的均值。

avg_col = mean(A, 2);
disp(avg_col);  % 输出 [2; 5; 8]

我们将矩阵 A 的每一行相加,并将结果除以列数 3,得到每一行的均值。

加权均值

mean 函数可以通过附加一个权重向量来计算加权均值。权重向量应该与计算均值的向量具有相同的长度。假设我们有一个权重向量 w 和一个向量 x,我们可以使用以下语法来计算加权均值:

weighted_avg = sum(w.*x)/sum(w)

让我们看一个例子:

w = [0.1, 0.2, 0.3, 0.2, 0.1];
x = [2, 4, 6, 8, 10];
weighted_avg = sum(w.*x)/sum(w);
disp(weighted_avg);  % 输出 6.2

我们对向量 x 中的数字进行加权求和,然后将结果除以权重的总和,得到加权均值 6.2。

总结

我们已经介绍了 MATLAB 中均值函数的语法和用法。mean 函数可用于计算向量和矩阵的均值,可以通过指定 dim 的值来计算每一行或每一列的均值。此外,我们还介绍了如何使用权重向量来计算加权均值。