How to vectorize a specific for-loop
Afficher commentaires plus anciens
I am trying to vectorize the for-loop hereafter. Would you have any hint? Thank you
for i = 1 : numel(text)-k+1 % "text" is a string
pattern(i,:) = text(i:i+k-1);
end
2 commentaires
Jan
le 9 Déc 2016
I've formatted the code for you. Please use the "{} Code" button the next time. Thanks.
Paolo Binetti
le 9 Déc 2016
Réponse acceptée
Plus de réponses (1)
Roger Stafford
le 9 Déc 2016
You might try the ‘hankel’ function:
n = numel(text);
nk = n-k+1;
pattern = hankel(text(1:nk),text(nk:n));
2 commentaires
Jan
le 9 Déc 2016
The vectorized version I've posted:
bsxfun(@plus, (1:numel(str) - k + 1).', 0:k-1)
is the core of the hankel function.
Paolo Binetti
le 17 Déc 2016
Catégories
En savoir plus sur Matrix Indexing dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!