Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: Reshaping Dataset
Date: Thu, 25 Jun 2009 22:00:18 +0000 (UTC)
Organization: Boeing
Lines: 24
Message-ID: <h20s1i$evc$1@fred.mathworks.com>
References: <h20j9k$9ok$1@fred.mathworks.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: webapp-05-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1245967218 15340 172.30.248.35 (25 Jun 2009 22:00:18 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Thu, 25 Jun 2009 22:00:18 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 756104
Xref: news.mathworks.com comp.soft-sys.matlab:550746


"Jeremy Bing" <jeremy@mytrashmail.com> wrote in message <h20j9k$9ok$1@fred.mathworks.com>...
> Hi,
> 
> I have data in the form of the following.
> 
> X Y Z X Y Z  >>
> X Y Z X Y Z 
> X Y Z X Y Z 
> X Y Z X Y Z 
> ...
> 
> But i need the data to be:
> 
> X Y Z
> X Y Z
> X Y Z
> 
> Do i used a case statement or a nested forloop to reshape the data? The dataset is quite large.

reshape(A',3,[])'

But this has a lot of data movement, the two transposes cause the entire dataset to be moved twice. If the time consumption is still too large then we could resort to a c-mex routine and limit the data movement to once, speeding things up.

James Tursa