Remove missing entries from nested cell array
이전 댓글 표시
Hello,
I have a cell array which has string arrray inside like for example below:

and some of the string array have empty/missing contents:

I would like to remove these empty/missing entries from the overall cell_array (temp_vars).
I tried something like:
temp_vars = temp_vars(~cellfun('isempty',temp_vars))
but did not find a solution yet. Any help would be appreciated.
답변 (2개)
Dyuman Joshi
2023년 11월 3일
temp_vars = temp_vars(~cellfun(@(x) any(ismissing(x)),temp_vars))
댓글 수: 4
ML_Analyst
2023년 11월 3일
Dyuman Joshi
2023년 11월 3일
편집: Dyuman Joshi
2023년 11월 7일
@ML_Analyst, As you mentioned overall cell_array, I interpreted it like that.
Nevertheless, in that case -
for k = 1:numel(temp_vars)
idx = find(ismissing(temp_vars{k}), 1);
temp_vars{k}(idx) = [];
end
Image Analyst
2023년 11월 3일
How many does that remove? He wants to "to remove only the first empty".
Dyuman Joshi
2023년 11월 3일
% make a cell array of string arrays with some missing elements:
str = ["some",missing,"string"];
C = repmat({str},1,3)
% remove the missing elements:
C = cellfun(@rmmissing,C,'UniformOutput',false)
카테고리
도움말 센터 및 File Exchange에서 String Parsing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!