Filter löschen
Filter löschen

Select the max & min values in multi index Matrix

6 Ansichten (letzte 30 Tage)
burcu bilgic
burcu bilgic am 8 Nov. 2021
Kommentiert: Image Analyst am 9 Nov. 2021
I have a matrix with repetitive values in x and y
for examle:
161 436
161 437
161 523
161 523
162 281
162 457
162 678
I want to find max and min values for every x, for example in this case, I want to end up with two different matrix where I have minimum and maximum values. For examle
min matrix:
161 436
162 281
and max matrix will be
161 523
162 678
each x value is an index and I want to find the min and max value corresponding to that index seperately
Thank you :)

Antworten (1)

Image Analyst
Image Analyst am 8 Nov. 2021
You can use splitapply:
m=[161 436
161 437
161 523
161 523
162 281
162 457
162 678];
groupID = findgroups(m(:, 1))
groupID = 7×1
1 1 1 1 2 2 2
minMatrix = splitapply(@min, m, groupID)
minMatrix = 2×2
161 436 162 281
maxMatrix = splitapply(@max, m, groupID)
maxMatrix = 2×2
161 523 162 678
  2 Kommentare
burcu bilgic
burcu bilgic am 9 Nov. 2021
it worked like a charm thank you so much :)
Image Analyst
Image Analyst am 9 Nov. 2021
Then could you please click the "Accept this answer" link? Thanks in advance. 🙂

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by