Loop in a cell array that consist of matrices in each cell

1 visualización (últimos 30 días)
I have written a loop to extract data from a 24x1 cell array, where each cell is of 36000x16 double table. I want to find the maximum value of column 12 in each of the 24 cells and store them in a matrix. But I'm getting an error 'Array indices must be positive integers or logical values.'
%% Loop for extracting data from a cell array
% results is a 24x1 cell array. Each cell consist of 36000x16 double table
for k =1:numel(results)
t = results{k,:}; % extracting every matrix within a cell
% values of interest is in column 12
temp = t(2:end, 12:12);
% find maximum value
max_column = max(temp);
end

Respuestas (2)

Matt J
Matt J el 23 de Sept. de 2021
Editada: Matt J el 23 de Sept. de 2021
You have a variable called "max" previously defined in your workspace.

Matt J
Matt J el 23 de Sept. de 2021
Editada: Matt J el 23 de Sept. de 2021
Easier:
results=cat(3,results{:});
max_column = squeeze( max(results(2:end,12,:)) )

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by