finding index to a vector in structure
1 view (last 30 days)
Show older comments
Consider the following example:
f = struct
f(1).x = 5;
f(2).x = 1:10;
f(3).x = 1;
f(4).x = 2;
I wish to find an automated way of finding which element of the field x is a vector. In the example above, the answer is element 2. Thank you!
0 Comments
Accepted Answer
the cyclist
on 1 Oct 2015
I could not figure out a vectorize way to do this, but perhaps this loop is good enough:
n = size(f,2);
isVectorF = false(1,n);
for nv = 1:n,
isVectorF(nv) = not(isscalar(f(nv).x));
end
isVectorF is a logical with 0 = scalar and 1 = vector.
1 Comment
Jos (10584)
on 1 Oct 2015
isVectorF = arrayfun(@(k) isvector(f(k).x) && numel(f(k).x)>1 ,1:numel(f))
More Answers (0)
See Also
Categories
Find more on Whos 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!