Clear Filters
Clear Filters

How do I find the number of "struct" class in a structure array?

17 views (last 30 days)
Hi,
Is there a way to determine the number of "struct" names in the structure array?
This way I could elimate the previous non-struct variables created.
Thanks
Ferd
  1 Comment
Clay Swackhamer
Clay Swackhamer on 8 Apr 2019
Hi Ferd maybe this will help. Let's say we defined a structure to hold a matrix, a cell, and a function. Could look like this:
s = struct %declare structure
s.someNumbers = [1, 2, 3] %add a matrix to the structure
s.someText = {'hello', 'world'} %add some text to the structure
s.someFunction = @(x) 2*x.^2 %add a function to the structure
Now, the function holds three different things. To get the names of these fields we can use
fieldNames = fieldnames(s)
To get the number of fields in the structure use
numFields = length(fieldNames)

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 8 Apr 2019
nnz(cellfun(@isstruct, struct2cell(YourStruct)))

More Answers (0)

Categories

Find more on Structures in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!