Skip to main content
AI Assist is now on Stack Overflow. Start a chat to get instant answers from across the network. Sign up to save and share your chats.
made title more appropriate
Link
Wolfie
  • 30.7k
  • 7
  • 30
  • 60

Matlab Matrix - how How to extract columnsautomatically create variables which are column extracts from a matrix filter columns

Formatting and structure to make things clearer
Source Link
Wolfie
  • 30.7k
  • 7
  • 30
  • 60

I am a very beginner in matlab and i am stuck at this point of my project.

I have aan n*n matrix nxn andand I want to substract the contentextract every 3 columns andand keep the result in different variables. I would like to do it in a bigger scale because I am working with a big amount of data. Is it possible to automate it?

I know that it is possible to do it in this way: A1 = A(:,1:3); A2 = A(:,4:6); A3 = A(:,7:9) but

A1 = A(:,1:3); A2 = A(:,4:6); A3 = A(:,7:9); 

But I would like to simplify itand automate this for managinmanaging a large amount of data!

Matrix 9 x 9
A =

A 1= [1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 8181] 

A1 =

A1 1=   [1 2 3  2 4 6  3 6 9  4 8 12 5 10 15 6 12 18 7 14 21 8 16 24 9 18 2727] 

A2 =

 A2 4= [4 5 7 8 10 12 12 15 18 16 20 24 20 25 30 24 30 36 28 35 42 32 40 48 36 45 5454] 

A3 =

 A3 7= [7 8 9 14 16 18 21 24 27 28 32 36 35 40 45 42 48 54 49 56 63 56 64 72 63 72 8181] 

Thank you very much in advance!!!!

I am a very beginner in matlab and i am stuck at this point of my project.

I have a matrix nxn and I want to substract the content every 3 columns and keep the result in different variables. I would like to do it in a bigger scale because I am working with a big amount of data. Is it possible to automate it?

I know that it is possible to do it in this way: A1 = A(:,1:3); A2 = A(:,4:6); A3 = A(:,7:9) but I would like to simplify it for managin large amount of data!

Matrix 9 x 9
A =

 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81 

A1 =

 1 2 3 2 4 6 3 6 9 4 8 12 5 10 15 6 12 18 7 14 21 8 16 24 9 18 27 

A2 =

 4 5 7 8 10 12 12 15 18 16 20 24 20 25 30 24 30 36 28 35 42 32 40 48 36 45 54 

A3 =

 7 8 9 14 16 18 21 24 27 28 32 36 35 40 45 42 48 54 49 56 63 56 64 72 63 72 81 

Thank you very much in advance!!!!

I have an n*n matrix and I want to extract every 3 columns and keep the result in different variables.

I know that it is possible to do it in this way:

A1 = A(:,1:3); A2 = A(:,4:6); A3 = A(:,7:9); 

But I would like to simplify and automate this for managing a large amount of data!

A = [1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81] 
A1 =   [1 2 3  2 4 6  3 6 9  4 8 12 5 10 15 6 12 18 7 14 21 8 16 24 9 18 27]  A2 = [4 5 7 8 10 12 12 15 18 16 20 24 20 25 30 24 30 36 28 35 42 32 40 48 36 45 54]  A3 = [7 8 9 14 16 18 21 24 27 28 32 36 35 40 45 42 48 54 49 56 63 56 64 72 63 72 81] 
Source Link

Matlab Matrix - how to extract columns from a matrix filter columns

I am a very beginner in matlab and i am stuck at this point of my project.

I have a matrix nxn and I want to substract the content every 3 columns and keep the result in different variables. I would like to do it in a bigger scale because I am working with a big amount of data. Is it possible to automate it?

I know that it is possible to do it in this way: A1 = A(:,1:3); A2 = A(:,4:6); A3 = A(:,7:9) but I would like to simplify it for managin large amount of data!

Matrix 9 x 9
A =

 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81 

Expected result:

A1 =

 1 2 3 2 4 6 3 6 9 4 8 12 5 10 15 6 12 18 7 14 21 8 16 24 9 18 27 

A2 =

 4 5 7 8 10 12 12 15 18 16 20 24 20 25 30 24 30 36 28 35 42 32 40 48 36 45 54 

A3 =

 7 8 9 14 16 18 21 24 27 28 32 36 35 40 45 42 48 54 49 56 63 56 64 72 63 72 81 

Thank you very much in advance!!!!