Seperate rows in matrix based on values of the elements.
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Mike Mierlo van
am 2 Mär. 2020
Kommentiert: Mike Mierlo van
am 2 Mär. 2020
Hi,
I have simplified my 'multiple radar' problem into this: Lets say I have matrix A, consisting of columns 1 (timestamp) and 2 (value). I want obtain matrices that have ascending timestamps and the difference between the values in column 2 of the new vectors must not be greater than 5.
%Input matrix [timestamp values]
A= [0 100;
0 400;
0 500;
1 103;
1 397;
1 502;
2 506;
2 104;
2 399];
%Now magic happens
%Output matrices per radar [timestamp values]
OUT1= [0 100;
1 103;
2 104];
OUT2= [0 400;
1 397;
2 399];
OUT3= [0 500;
1 502;
2 506];
Hopefully somebody can help me out of this misery
0 Kommentare
Akzeptierte Antwort
KALYAN ACHARJYA
am 2 Mär. 2020
Bearbeitet: KALYAN ACHARJYA
am 2 Mär. 2020
for i=1:length(unique(A(:,1)))
mat{i}=A(A(:,1)==i-1,:);
end
result=cell2mat(mat)
out1=reshape(result(1,:),[2,3])' % Use loop for 3 statements
out2=reshape(result(2,:),[2,3])'
out3=reshape(result(3,:),[2,3])'
# This may be possible without loop also, recomended
6 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Matched Filter and Ambiguity Function finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!