find values around a given row value

5 visualizzazioni (ultimi 30 giorni)
I have a 2 column matrix where I have a row of interest. i.e.
A =
2.5000 2.3500
2.5600 3.3300
2.4500 3.1000
etc....
and I want to find say 100 rows past the row of interest (2.5 2.35) (i.e. down the matrix). Is there a function for this? thanks.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 25 Nov 2013
Modificato: Azzi Abdelmalek il 25 Nov 2013
idx=find(ismember(A,[ 2.5000 2.3500],'rows'),1)
out=A(idx+1:idx+100,:)
  6 Commenti
MacKenzie
MacKenzie il 25 Nov 2013
Ah! thanks SO much!
Walter Roberson
Walter Roberson il 14 Ott 2017
QIANG SUN comments to Azzi:
great!

Accedi per commentare.

Più risposte (1)

Youssef  Khmou
Youssef Khmou il 25 Nov 2013
you can use minimum absolute value as the following :
% data generation
p1=2.5;p2=2.35;
A=ones(600,2);
A(:,1)=A(:,1)*p1;
A(:,2)=A(:,2)*p2;
A=A+randn(size(A); % additive noise
%processing
eps=0.02;
B(:,1)=abs(A(:,1)-p1);
B(:,2)=abs(A(:,2)-p2);
Result=B(B<eps);

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by