Filter löschen
Filter löschen

How do i check for empty cells within a list

844 Ansichten (letzte 30 Tage)
Andy
Andy am 21 Sep. 2011
Verschoben: Voss am 25 Jun. 2024 um 17:02
How do i check for empty cells within list? I have a list of cells, namelist, and it has 12 values, i need to check if some of the cells are empty. Thanks

Akzeptierte Antwort

the cyclist
the cyclist am 21 Sep. 2011
It is not clear what you mean by a "list of cells". Can you provide some code that illustrates what types of variables you are using? For example, by "cells", do you mean cell arrays?
Without more details, it is hard to answer your question, but there are functions isempty() and cellfun() that might be useful to you.
Edited in response to your comments:
>> cellfun(@isempty,namelist)
does what I think you want. For example:
namelist = cell(2,6)
namelist{1} = 'abc'
namelist{12} = 3
cellfun(@isempty,namelist)
  7 Kommentare
Jan
Jan am 24 Nov. 2017
[EDITED, moved from flag to comment] LULU XUE wrote:
It's very useful!! inspiring! Thanks
WANG Jason
WANG Jason am 29 Apr. 2020
This solution shows the power of Matrix:)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

topdawgnate
topdawgnate am 21 Sep. 2011
%Build Cell array (note the curly brackets)
A{1,1} = [1 4 3; 0 5 8; 7 2 9];
A{1,2} = 'Anne Smith';
A{2,1} = 3+7i;
A{2,2} = [];
Use the isempty function
isempty(A{2,2}) %Note the difference "{" and "(" brackets
This function will return 1.
Hope this helps. Nate
  2 Kommentare
Andy
Andy am 21 Sep. 2011
exactly what i needed, thanks!
the cyclist
the cyclist am 21 Sep. 2011
Be aware that this solution checks a single element within a cell array. My solution checks every element in the cell array individually, and reports whether each cell is empty or not. That might be more efficient, depending on your application.

Melden Sie sich an, um zu kommentieren.


Korosh Agha Mohammad Ghasemi
Korosh Agha Mohammad Ghasemi am 25 Jun. 2024 um 16:41
Verschoben: Voss am 25 Jun. 2024 um 17:02
To check for empty cells within a cell array in MATLAB, you can use the cellfun function combined with isempty. This approach is efficient and straightforward. Here’s how you can do it:
% Example cell array
namelist = {'John', [], 'Alice', 'Bob', [], 'Eve', 'Charlie', [], 'Dave', [], 'Frank', 'Grace'};
% Use cellfun with isempty to find empty cells
emptyCells = cellfun(@isempty, namelist);
% Display the indices of empty cells
emptyIndices = find(emptyCells);
disp('Empty cell indices:');
disp(emptyIndices);
This code will create a logical array emptyCells where each element is true if the corresponding cell in namelist is empty and false otherwise. The find function then returns the indices of the empty cells.
If you prefer a faster implementation, especially for large cell arrays, you can use the string form of cellfun:
emptyCells = cellfun('isempty', namelist);
emptyIndices = find(emptyCells);
disp('Empty cell indices:');
disp(emptyIndices);

Kategorien

Mehr zu Argument Definitions finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by