# how to find maximum and minimum in a matrix

2 visualizzazioni (ultimi 30 giorni)
Maryam Hamrahi il 4 Ago 2016
Commentato: Maryam Hamrahi il 4 Ago 2016
I have matrix A with n rows and 2 columns. I would like to find rows which has the maximum and/or minimum of X and/or Y. Then, replace zero in these rows.
For instance: I have matrix A and I would like to produce matrix B.
A= [0.1 0.5
0.3 0.9
0.4 0.8
0.4 0.2
1 0.7
0.2 0.6
0.7 1
0.2 0.9]
Here, max. X=1 min. X=0.1 max. Y=1 min. Y=0.2
B= [0 0
0.3 0.9
0.4 0.8
0 0
0 0
0.2 0.6
0 0
0.2 0.9]
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

### Risposta accettata

Thorsten il 4 Ago 2016
A= [0.1 0.5
0.3 0.9
0.4 0.8
0.4 0.2
1 0.7
0.2 0.6
0.7 1
0.2 0.9]
idx = A(:,1)==max(A(:,1)) | A(:,1)==min(A(:,1)) |...
A(:,2)==max(A(:,2)) | A(:,2)==min(A(:,2));
A(any(idx,2),:) = 0
##### 1 CommentoMostra -1 commenti meno recentiNascondi -1 commenti meno recenti
Maryam Hamrahi il 4 Ago 2016
I really appreciate your help Thorsten. Thank you very much.

Accedi per commentare.

### Più risposte (1)

Stephen23 il 4 Ago 2016
Modificato: Stephen23 il 4 Ago 2016
The simplest way would be to use logical indexing:
>> idx = A==max(A(:)) | A==min(A(:));
>> A(any(idx,2),:) = 0
A =
0.0 0.0
0.3 0.9
0.4 0.8
0.0 0.0
0.0 0.0
0.2 0.6
0.0 0.0
0.2 0.9
##### 3 CommentiMostra 1 commento meno recenteNascondi 1 commento meno recente
Stephen23 il 4 Ago 2016
Modificato: Stephen23 il 4 Ago 2016
@Maryam Hamrahi: you are right, I made a mistake, and have now corrected my answer. It should work for you now.
Maryam Hamrahi il 4 Ago 2016
Thank you very much Stephen Cobeldick.
I want to have the following:
A =
0.0 0.0
0.3 0.9
0.4 0.8
0.0 0.0
0.0 0.0
0.2 0.6
0.0 0.0
0.2 0.9
but it gives me this:
A =
0 0
0.3000 0.9000
0.4000 0.8000
0.4000 0.2000
0 0
0.2000 0.6000
0 0
0.2000 0.9000

Accedi per commentare.

### Categorie

Scopri di più su Matrix Indexing in Help Center e File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by