Define a new structure from another one
Afficher commentaires plus anciens
Hi,
I have structure (STR) as struct 20x1 with two fields (A and B).
I want:
1- to call STR in a function,
2- and I want to define a new structure with a new name for example SS.P in which, it is equal to STR.A.
I know that I can use "SS.P=STR.A", but in this case, I don't want to use "A".
I'm looking for some thing like: SS.P =STR(:,1) and in this statement, 1 is the first column (field) of STR. Unfortunetely, the commend of SS.P =STR(:,1) is not a correct comment in MATLAB. Could anyone give me the right comment to do this?
4 commentaires
KSSV
le 6 Nov 2020
This means you want to convert structure to array?
Try struct2cell.
civil tech
le 6 Nov 2020
civil tech
le 6 Nov 2020
civil tech
le 6 Nov 2020
Réponses (1)
Bruno Luong
le 6 Nov 2020
Modifié(e) : Bruno Luong
le 6 Nov 2020
fname = fieldnames(STR)
S.P = STR.(fname{1}); % S = struct('P', {STR.(fname{1})})
1 commentaire
civil tech
le 6 Nov 2020
Catégories
En savoir plus sur Structures dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!