필터 지우기
필터 지우기

understand if the cell is composed of all null elements

조회 수: 2 (최근 30일)
Alberto Acri
Alberto Acri 2023년 7월 26일
답변: Steven Lord 2023년 7월 26일
Hi! How can I understand if the cell consists of all null elements? I tried this way but it doesn't seem to work:
CC = cell([3 7]);
empty_cell = ~isempty(CC); % result 1
or
load cc.mat
empty_cell = ~isempty(CC); % result 1 ?

채택된 답변

Steven Lord
Steven Lord 2023년 7월 26일
MATLAB is returning the correct result. The cell array is not empty, its size vector does not contain a 0.
C = cell(1, 5)
C = 1×5 cell array
{0×0 double} {0×0 double} {0×0 double} {0×0 double} {0×0 double}
C{3} = 1:10
C = 1×5 cell array
{0×0 double} {0×0 double} {[1 2 3 4 5 6 7 8 9 10]} {0×0 double} {0×0 double}
isempty(C) % false
ans = logical
0
size(C)
ans = 1×2
1 5
The cells inside the cell array in this case are empty. One way to determine this is to use cellfun.
identifyEmptyCells = cellfun(@isempty, C)
identifyEmptyCells = 1×5 logical array
1 1 0 1 1
Depending on what question you want to ask, passing identifyEmptyCells into the any or all functions may be your next step.
areAllTheCellsEmpty = all(identifyEmptyCells, 'all')
areAllTheCellsEmpty = logical
0
areAnyOfTheCellsEmpty = any(identifyEmptyCells, 'all')
areAnyOfTheCellsEmpty = logical
1

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Structures에 대해 자세히 알아보기

제품


릴리스

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by