Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.matlab

Topic: changing a 2D array into a 3D array
Replies: 6   Last Post: May 10, 2013 7:29 PM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
roman voronov

Posts: 9
Registered: 4/25/08
Re: changing a 2D array into a 3D array
Posted: May 10, 2013 6:35 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

A = rand(2,4) ;
N = 3 ;
B = repmat(A,1,1,N)
Error using repmat
Too many input arguments.

"Jos (10584)" wrote in message <frnvri$5cb$1@fred.mathworks.com>...
> "Jen " <phyjeh@leeds.ac.uk> wrote in message
> <frnuti$rp1$1@fred.mathworks.com>...

> > Hello,
> >
> > I have a 2 dimensional array with n elements along each
> > direction.... and I want to "copy" this array n times to
> > create a 3 dimensional array, so that the 3rd dimension is
> > made up of n copies of the original array.
> >
> > The 2 dimensional array is made using two for loops to
> > calculate an integral, so I don't want to just add an extra
> > loop to make the 3D array as it already takes a long time to
> > calculate!
> >
> > Is there another way to extend the matrix into the 3rd
> > dimension?
> >
> > Thanks to anyone that replies!

>
>
> Use REPMAT to create N planes of the 2D matrix A:
>
> A = rand(2,4) ;
> N = 3 ;
> B = repmat(A,1,1,N)
>
> B is now a 2-by-4-by-3 matrix
>
> hth
> Jos




Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.