Creating new matrix from the second column of other matrices

1 vue (au cours des 30 derniers jours)
Shabnam M
Shabnam M le 22 Juil 2019
Commenté : Shabnam M le 23 Juil 2019
Hi,
I have 10918 matrices with dimensions of [1000*4].
I want to create a new matrix which its columns are the second column of 10918 matrices which I have.
These 10918 matrices are .plt file and their name are as : PIV_1, PIV_2, PIV_3,....,PIV_10918.
For example:
PIV_1=[x_1,y_1,u_1,v_1]
PIV_2=[x_2,y_2,u_2,v_2]
...
PIV_10918=[x_10918,y_10918,u_10918,v_10918]
new matrix=[y_1,y_2,...,y_10918]
I am sorry if i cant explain well . Thanks in advance for your help.
  2 commentaires
Stephen23
Stephen23 le 22 Juil 2019
"These 10918 matrices are .plt file and their name are as : PIV_1, PIV_2, PIV_3,....,PIV_10918."
The most important question: How did you get so many individually-named variables in the workspace?
Note that using numbered variables is a sign that you are doing something wrong. Your code design forces you to write slow, complex, inefficient, obfuscated, buggy code that is hard to debug. Read this to know some reasons why:
Most likely you could have easily avoid this by using indexing. Indexing is simple, neat, and very efficient (unlike what you are trying to do).
Shabnam M
Shabnam M le 23 Juil 2019
These matrices are some data from experimental analysis for different time step, and I need to find a matrix which its columns are the second column of those 10918 matrices.
Thanks for your suggestion, I will read the indexing to find a way.

Connectez-vous pour commenter.

Réponses (1)

Torsten
Torsten le 22 Juil 2019
Modifié(e) : Torsten le 22 Juil 2019
new_matrix = [PIV_1(:,2),PIV_2(:,2),...,PIV_10918(:,2)]
Quite much to write ...
You should have worked with one 10918x1000x4 matrix PIV with PIV(i,:,:) = PIV_i.

Catégories

En savoir plus sur Fluid Dynamics dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by