To get the column number of max and min number

24 visualizaciones (últimos 30 días)
fyza affandi
fyza affandi el 17 de Feb. de 2019
Comentada: fyza affandi el 17 de Feb. de 2019
I have an array,
a=[ 1 5 3 7 4]
How can I get the position of max and min numbere?
The answer should be
max = 4 %(number 7 which is at column 4 )
min = 1 %(number 1 which is at column 1 )

Respuesta aceptada

Stephen23
Stephen23 el 17 de Feb. de 2019
>> a = [1,5,3,7,4]
a =
1 5 3 7 4
>> [~,mxi] = max(a)
mxi = 4
>> [~,mni] = min(a)
mni = 1

Más respuestas (1)

Image Analyst
Image Analyst el 17 de Feb. de 2019
You can use the min() and max() functions but they have a serious limitation with integer numbers - they only return the FIRST occurrence of the max or min. If it occurs more than once you will not get all the indexes. Try this demo code and understand the results:
a=[ 1 5 3 7 4, 7, 1]
[maxValue, indexOfMax] = max(a)
[minValue, indexOfMin] = min(a)
indexesOfMaxs = find(a == maxValue)
indexesOfMins = find(a == minValue)
The results in the command window:
a =
1 5 3 7 4 7 1
maxValue =
7
indexOfMax =
4
minValue =
1
indexOfMin =
1
indexesOfMaxs =
4 6
indexesOfMins =
1 7
Note how using find() gives you both indexes rather than just the first one.

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by