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

1 vue (au cours des 30 derniers jours)
Anirudh Peralai Ravisundar
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

Réponses (2)

Matt J
Matt J le 23 Sep 2021
Modifié(e) : Matt J le 23 Sep 2021
You have a variable called "max" previously defined in your workspace.

Matt J
Matt J le 23 Sep 2021
Modifié(e) : Matt J le 23 Sep 2021
Easier:
results=cat(3,results{:});
max_column = squeeze( max(results(2:end,12,:)) )

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by