Scanning signal/Storing anything other then zeros
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Sebastian Daneli
am 14 Jun. 2021
Kommentiert: Rik
am 15 Jun. 2021
Hi
I have a filtered signal where the base line is zero that looks in principle like this:
[0 0 0 -1 2 -2 0 0 0 2 1 -1 0 0 0 2 3 1 0 0 0...]
I wish to scan the signal and store the structures within it in a matrix such as this one:
[-1 2 -2; 2 1 -1; 2 3 1;...]
Which is the most efficient way to do this? Can I use the find function efficiently for this?
1 Kommentar
Rik
am 15 Jun. 2021
Regarding your flag ("I asked this question, but realized I didn't ask the correct question that I need answered."): what do you want to happen? Should this thread be deleted just because you asked a different question from what you wanted?
If the answer didn't solve your actual problem, why did you mark it as accepted answer? You can post comments with clarifications to make sure you are making clear what you want to know.
Akzeptierte Antwort
Mathieu NOE
am 14 Jun. 2021
hello
my suggestion / demo code :
I understand the output must be a matrix of 3 columns;
tol = eps; % set a tolerance value (very low but not zero)
a = [0 0 0 -1 2 -2 0 0 0 2 1 -1 0 0 0 2 3 1 0 0 0]; % input data
b = a(abs(a)>tol); % remove zero (below tol) data
c = (reshape(b,[],3))'; % reshape in 3 columns matrix and transpose
c =
-1 2 -2
2 1 -1
2 3 1
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Logical 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!