Existe-t-il un moyen d'étendre un vecteur en le faisant se répéter?
>v = [1 2];
>v10 = v x 5; %x represents some function. Something like "1 2" x 5 in perl
Alors la v10 serait:
>v10
1 2 1 2 1 2 1 2 1 2
Cela devrait fonctionner pour le cas général, pas seulement pour [1 2]
v=[1 2]
etv100=kron(ones(1,100),v)
est le vecteurv100=[v v ... v]
(100 fois). Si vous souhaitez concaténer un vecteur de colonney
avec lui - même desK
heures, utilisezyK=kron(ones(K,1),y)
.Réponses:
La fonction que vous recherchez est
repmat()
.la source
De toute évidence, repmat est la voie à suivre si vous savez dans quelle direction vous souhaitez étendre le vecteur.
Cependant, si vous voulez une solution générale qui répète toujours le vecteur dans la direction la plus longue, cette combinaison de repmat et d'indexation devrait faire l'affaire:
la source