Selecting only some rows of a matrix
    7 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    MRC
 am 12 Dez. 2013
  
    
    
    
    
    Beantwortet: Andrei Bobrov
      
      
 am 12 Dez. 2013
            Hi, I have a matrix A mxn and I want to select only some of its rows satisfying this criterion: A(i,1)<=1e-03 && A(i,1)>=-1e-03 && A(i,2)<=1e-03 A(i,2)>=-1e-03 && A(i,3:end)<= 1e-03. I can't use loops.
Could you help me? Thanks
0 Kommentare
Akzeptierte Antwort
  Azzi Abdelmalek
      
      
 am 12 Dez. 2013
        idx=A(:,1)<=1e-03 & A(:,1)>=-1e-03 & A(:,2)<=1e-03 & A(:,2)>=-1e-03 & all(A(:,3:end)<= 1e-03,2)
B=A(idx,:)
0 Kommentare
Weitere Antworten (2)
  Simon
      
 am 12 Dez. 2013
        
      Bearbeitet: Simon
      
 am 12 Dez. 2013
  
      Hi!
So, what is "i"? Did you mean ":"? I assume ":" here.
Start by looking at the first criterion, you can write
crit1 = A(:, 1) <= 1e-3;
This will give you a logical vector. Do the same with the other criterions and combine them.
Hint: For the last criterion the function "all" is useful.
0 Kommentare
Siehe auch
Kategorien
				Mehr zu Data Types 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!



