Wir versuchen, eine Funktion zu schreiben, die arr nimmt und zählt, wie viele 0 und 1 in der Reihenfolge erscheinen. Die Ausgabe sollte ein 2D-Array sein, wobei Spalte 1 angibt, wie viele in der Sequenz erscheinen und Spalte 2 ist, welches Token es ist (0 oder 1). Unsere Funktion untenMATLAB Morse Code diff und finden Funktionen
function [token] = tokenizeSignal(arr)
matA = diff(find(diff([log_vector;-1])));
addA = zeros(size(matA, 1),1);
matA = [matA, addA];
matB = diff(find(diff([log_vector;0])));
addB = ones(size(matB, 1), 1);
matB = [matB, addB];
[nRowsA, nCols] = size(matA);
nRowsB = size(matB, 1);
AB = zeros(nRowsA + nRowsB, nCols);
AB(1:2:end, :) = matA;
AB(2:2:end, :) = matB;
token = AB;
Arbeiten mit
arr = [0; 0; 0; 1; 1; 1; 0];
aber nichts anderes, weil es fügt Zufallszahlen in die Matrix. Warum tut es das und wie kann ich es beheben?
ein nicht triviales Beispiel für das Hinzufügen, was Sie würde helfen wollen –
Wie wollen Sie Ihr Ergebnis aus abzuhängen 'arr', wenn Sie Benutze es nirgends? –