add value to cell array

6 views (last 30 days)
michael
michael on 29 Dec 2021
Answered: Voss on 29 Dec 2021
Hello,
I need to add some values to cell array based on conditions. It can be that on some condition, the value shall be not be added. As I want it to be generic, I use some function that generates the value.
label_text_output = my_function(inputs) % outout is either 'text' or []
label_text{(length(label_text)+1} = label_text_output
If label_text_output = [], then I'm receing
label_text =
'text' []
While I need
label_text =
'text'
at the same conditions.

Accepted Answer

Stephen23
Stephen23 on 29 Dec 2021
Edited: Stephen23 on 29 Dec 2021
if numel(label_text_output)
label_text{end+1} = label_text_output
end
Or alternatively afterwards you could do this:
label_text(cellfun(@isempty,label_text)) = []

More Answers (1)

Voss
Voss on 29 Dec 2021
It sounds like (I'm not 100% sure) what you want is that when label_text_output is the empty array, it does not get added to the end of label_text. If that's the case, then you can check that label_text_output is not empty before adding:
if ~isempty(label_text_output)
label_text{end+1} = label_text_output;
end

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Products


Release

R14SP2

Community Treasure Hunt

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

Start Hunting!