James Sherman Jr. wrote:
> You're not looking to reshape the vector, but to replicate the vector.
> This can be done using the "repmat" function. You can type "help
> repmat" to see the details, but to do just what you have there, it can
> be done like:
>
> A = 1:4;
> AA = repmat(A, [1 4]);
>
> 2010/5/24 Miĥail Vasiljev <address@hidden <mailto:address@hidden>>
>
> Hello!
>
> Probably this question is answered somewhere but searching google was
> not helpful. I have a vector, say,
>
> A = 1:4;
>
> I want to create another vector, with a form
>
> AA = 1,2,3,4,1,2,3,4,1,2,3,4;
>
> i.e. I need a vector who's elements are elements of vector A, just
> repeated n times. How can I achieve this?
>
> Thank you!
>
> --
> Miĥail Vasiljev <address@hidden <mailto:address@hidden>>
>
> _______________________________________________
> Help-octave mailing list
> address@hidden <mailto:address@hidden>
> ------------------------------------------------------------------------
My first inclination was to "solve" this problem with
a = [1:4];
aa = [a a a a];
works for the task at hand but not easily expanded to a large
size. The much better solution provided by James Sherman
A = 1:4;
AA = repmat(A, [1 4]);
is much better when you may want to expand this to very large
sizes. But
A = 1:4;
AA = repmat(A,1,4);
also works, much like James Sherman's solution. Is there any
particular reason for your use of square brackets? Is it primarily
a coding style issue? I use octave for a lot of my data analysis
needs but I am by no means much more than a novice user. I learn
a lot about the language by reading the excellent posts by the
very generous help from the folks that provide so many helpful
solutions on this list. Thank you all. Thank you also to Professor
Eaton for keeping this great tool going.
Talk to you later. Ron.