MATLAB Answers

How to combine 2 structures into 1?

2 views (last 30 days)
John
John on 13 Mar 2020
Answered: Fangjun Jiang on 13 Mar 2020
>> a = struct('a1',1,'a2',2,'a3',3)
a =
struct with fields:
a1: 1
a2: 2
a3: 3
>> b=struct('b1',11,'b2',12,'b3',13,'b4',14)
b =
struct with fields:
b1: 11
b2: 12
b3: 13
b4: 14
Want to combine structures a and b into c like:
>> c = struct('a1',1,'a2',2,'a3',3,'b1',11,'b2',12,'b3',13,'b4',14)
c =
struct with fields:
a1: 1
a2: 2
a3: 3
b1: 11
b2: 12
b3: 13
b4: 14

Answers (1)

Fangjun Jiang
Fangjun Jiang on 13 Mar 2020
d=[struct2cell(a);struct2cell(b)];
f=[fieldnames(a);fieldnames(b)];
c=cell2struct(d,f)

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by