MATLAB中的元素矩阵min

时间:2014-10-29 15:22:50

标签: matlab min

这很奇怪。

我有一个巨大的10000x1向量(称之为B),而10000x1向量(称之为A)只包含所有向量。

我想对B和A进行逐元素的最小比较......例如min(B(1),A(1))min(B(2),A(2)) ....等等。

所以C=min(B,A)

我有B(1) = 0.85B(2) = 1.25,当我们这样做min时,我希望C(1)=0.85C(2)=1

但是,生成的C矩阵包含:C(1)=0.085C(2)=0.125。这是为什么?

2 个答案:

答案 0 :(得分:5)

您也可以

C = ((A+B) - abs(A-B))/2;

答案 1 :(得分:3)

如果没有看到完整的代码和值,很难看出究竟是什么问题,但显然有些错误或与您描述的不同。 请参阅此示例,了解如何根据您的描述进行操作:

A = ones(5,1);
B = A*1000;
B(1)=0.85;
B(2)=1.25;
C = min(B,A)

将产生:

C =

    0.8500    1.0000    1.0000    1.0000    1.0000

将5更改为10000当然不会更改C的前两个值。