Solved

# How do I transform 1D array into 2D array without using for loops in Matlab?

Posted on 2009-04-01
2,865 Views
Last Modified: 2016-02-10
Hi,

I've got a 1D array containing a large number of values, and I'd like to transform it to a 2D array where each sequence of 12 values is put in a row, so the size of the 2D array would be:
number of rows = number of values/12
number of columns = 12

I currently make this operation with a for loop, but it takes time for arrays containing large amount of data.

Someone would have an idea to optimize it?
``````for nrow=1:length(myarray)/12,
for ncol=1:12,
newarray(nrow,ncol)=myarray((nrow-1)*12+ncol);
end
end
``````
0
Question by:JulienVan
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• Learn & ask questions
2 Comments

LVL 15

Accepted Solution

yuk99 earned 450 total points
ID: 24039043
Use RESHAPE function. Don't have matlab right now to test by try this.

``````newarray=reshape(myarray,12,[])';
``````
0

LVL 5

Assisted Solution

LukeyJay earned 50 total points
ID: 24067355
Yuk,

I tested your code.  Works fine.

Luke
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article is meant to give a basic understanding of how to use R Sweave as a way to merge LaTeX and R code seamlessly into one presentable document.
The purpose of this article is to demonstrate how we can use conditional statements using Python.
The goal of this video is to provide viewers with basic examples to understand and use conditional statements in the C programming language.
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
###### Suggested Courses
Course of the Month11 days, 10 hours left to enroll

#### 623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.