How to create array from old array with values greater than a specified value?
Afficher commentaires plus anciens
I have a cell array called timePks as seen below. Each cell has a column of numbers and I want to create a new cell array with the values from timePks that are greater than 20. I don't want the values that are less than 20 to be in the new cell array.

[timePks{i},timeLocs{i}]=findpeaks(aefm_1(1200:1450,i));
[ss{i},tt{i}] = find(timePks{i}>20);
When I run the code above, ss{i} gives me cell arrays of the row #'s that has a value above 20 but I want it to say the value, not the row number it belongs in.
Réponse acceptée
Plus de réponses (1)
the cyclist
le 15 Juin 2020
% Some made-up data
timePks = {[10; 20; 30; 40],[5; 10; 20; 25],[1; 2; 3]};
% Output with only values greater than 20
output = cellfun(@(x)x(x>20),timePks,'UniformOutput',false)
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!