matrix manipulation

>> A
A =
7 0 6
9 8 7
6 9 7
>> B
B =
3 7 0
6 0 0
1 2 8
>> C
C =
6 0 7
3 4 7
9 3 1
I need to have a matrix which have to store like this
>> Vec
Vec =
7 9 6 0 8 9 6 7 7
3 6 1 7 0 2 0 0 8
6 3 9 0 4 3 7 7 1
the above representing, each location element of all mattices are stored as coloumn.
For this I have written a code like this
>> P=reshape(A,[1 9]);
>> Q=reshape(B,[1 9]);
>> R=reshape(C,[1 9]);
>> Vec=[P;Q;R]
Is there any better way to do this?

1 Commento

Jan
Jan il 22 Set 2011
What do you mean by "better"? Faster or nicer?

Accedi per commentare.

 Risposta accettata

Fangjun Jiang
Fangjun Jiang il 22 Set 2011

0 voti

Vec=[A(:) B(:) C(:)]'

4 Commenti

Raviteja
Raviteja il 22 Set 2011
Suppose if I have 100 matrices to do the above operation what is the easy method to do? Do I need to write a for loop like
vec=[];
for i1=1:number_of_matrices
vec=[vec new_matrix];
end
Walter Roberson
Walter Roberson il 22 Set 2011
Don't have 100 matrices with individual names.
See http://matlab.wikia.com/wiki/FAQ#How_can_I_create_variables_A1.2C_A2.2C....2CA10_in_a_loop.3F
Fangjun Jiang
Fangjun Jiang il 22 Set 2011
You could do that but you'll have hard time to identify the new_matrix in the for-loop because they have different name like A, B, C, etc. or in many case, people name it A1, A2, A3, etc, right? If you really have more than 100 matrices, the right solution is to do it right at the beginning. Instead of using A, B, C, you can define the variable as Vec=zeros(9, 100) and then you avoid the problem. See "How can I create variables A1, A2,...,A10 in a loop?" at http://matlab.wikia.com/wiki/FAQ
Fangjun Jiang
Fangjun Jiang il 22 Set 2011
@Walter, I need to learn from you how to put that hyper-link in place with the right FAQ item at the top of the page. This question has popped up twice just this morning. Right now, I made a bookmark out of your hyper-link.

Accedi per commentare.

Più risposte (0)

Categorie

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by