get a field value from all elements of a structure

92 views (last 30 days)
If I have a structure s with a field A(1) and A(2) and A(3), where each of these A fields has a field B, I can type:
s = struct
s.A(1).B = 351;
s.A(2).B = 879;
s.A(3).B = 229;
s.A(4).B = 654;
If I type s.A.B it will show all four values as four separate "ans", but if I type temp = s.A.B it only grabs the first value. How do I get all of these values of B into a double array? I could write a for-loop:
for i = 1 : size(s.A,2)
temp(i) = s.A(i).B;
end
Is there a one-liner?

Accepted Answer

Adam Danz
Adam Danz on 22 Feb 2021
z = [s.A.B];

More Answers (0)

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!