add value to cell array

8 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

Tags

Products


Release

R14SP2

Community Treasure Hunt

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

Start Hunting!