How to load selected columns in a for loop?

5 visualizaciones (últimos 30 días)
Joe
Joe el 15 de Abr. de 2024
Editada: Shivani el 17 de Abr. de 2024
I am trying to load a lot of data. I wrote a for loop to load the .mat files, but I only want certain columns from the files. The columns I need to load do not change between the data sets.
For example, how do I load columns 2, 5, 200, etc inside the loop?
for i= [1:5 7:156]
for ii = [6 157:244]
load(['LL_00' num2str(i) '.mat'])
load(['LL_0' num2str(ii) '.mat'])
end
end
  1 comentario
Mathieu NOE
Mathieu NOE el 15 de Abr. de 2024
simply load all the data then select which cols you want
col_selected = [2;5;200];
data_selected = data(:,col_selected);

Iniciar sesión para comentar.

Respuestas (1)

Shivani
Shivani el 17 de Abr. de 2024
Editada: Shivani el 17 de Abr. de 2024
Hello @Joe,
Please note that in MATLAB .MAT files can contain multiple variables of various sizes, so loading specific columns would require knowing the variable names inside those .MAT files.
To load specific columns from variables within .MAT files, you would first load the file and then extract the columns you need from the loaded variables. I assuming that the variable from which you are looking to extract columns to be 'data’ in the code snippet below.
columns_to_extract = [2, 5, 200];
for i = [1:5, 7:156]
loaded_data_i = load(filename_i);
specific_columns_i = loaded_data_i.data(:, columns_to_extract);
end
I hope this helps!

Categorías

Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.

Productos


Versión

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by