get a field value from all elements of a structure

90 vues (au cours des 30 derniers jours)
Mike D.
Mike D. le 22 Fév 2021
Commenté : Adam Danz le 22 Fév 2021
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?

Réponse acceptée

Adam Danz
Adam Danz le 22 Fév 2021
z = [s.A.B];
  2 commentaires
Mike D.
Mike D. le 22 Fév 2021
Thanks, I knew there must be an easy way.
Adam Danz
Adam Danz le 22 Fév 2021
Good intuition. :)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Workspace Variables and MAT-Files dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by