# Doubt regarding max(A,B).

조회 수: 13(최근 30일)
S Priya 2021년 8월 21일
댓글: Steven Lord 2021년 8월 21일
A=[1 3 5]
B=[10 6 4]
Why is max(A,B) as [10 6 5]?
It should be [5 10]

댓글을 달려면 로그인하십시오.

### 답변(2개)

Stephen23 2021년 8월 21일
편집: Stephen23 2021년 8월 21일
"Why is max(A,B) as [10 6 5]?"
Because that syntax provides an element-wise comparison of the two input arrays, taking the maximum value from either one of the input arrays:
1. the maximum of 1 and 10 is 10
2. the maximum of 3 and 6 is 6
3. the maximum of 5 and 4 is 5
"It should be [5 10]"
No, it should not be.
What are are expecting is the maximum of each row of one matrix (not comparing the elements of two different arrays):
max([A;B],[],2)
ans = 2×1
5 10
Note that in some other languages the two functionalities are considered as different functions, e.g. in numpy they are amax and maximum respectively.
##### 댓글 수: 1표시숨기기 없음
Steven Lord 2021년 8월 21일
I suspect the original poster's mental model may have been that max(A, B) is [max(A), max(B)] and max(A, B, C, ...) is the same as [max(A), max(B), max(C), ...]. But as many people have said in this discussion, that is incorrect. If A and B are the same size each element of the output of max(A, B) is the maximum of the corresponding elements of A and B.
A=[1 3 5];
B=[10 6 4];
C_allAtOnce = max(A, B)
C_allAtOnce = 1×3
10 6 5
C_oneAtATime = [max(A(1), B(1)), max(A(2), B(2)), max(A(3), B(3))]
C_oneAtATime = 1×3
10 6 5
Compare with:
maxOfEachVector = [max(A), max(B)]
maxOfEachVector = 1×2
5 10

댓글을 달려면 로그인하십시오.

VBBV 2021년 8월 21일
```%f true
max([A B])
max([A;B])
```

The first would give 10 as max value. The second would give 10 6 5 as max values along each column

##### 댓글 수: 6표시숨기기 이전 댓글 수: 5
VBBV 2021년 8월 21일
For the OP.

댓글을 달려면 로그인하십시오.

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!