MATLAB: Manipulate structure field data to create a table

structure

Hello All,
I am trying to restructure the data from the structure fields to get the desired table. For better understanding i illustrate with a simple example below:
1×4 struct with 3 fields
type list no
type1 a 1
type1 p 0
type2 a 7
type2 c 6
what i need is a sorted summary table like this: (alphabetically sorted & unique of 'list' with unique of 'type' associated with their respective 'no' values.)
a c p
type1 1 – 0
type2 7 6 –
Thank you all in advance.

Best Answer

Tailor-made for the too-often-overlooked unstack:
>> type = categorical(["type1";"type1";"type2";"type2"]);
>> list = ["a";"p";"a";"c"];
>> no = [1;0;7;6];
>> t = table(type,list,no)
t =
4×3 table
type list no
_____ ____ __
type1 "a" 1
type1 "p" 0
type2 "a" 7
type2 "c" 6
>> t2 = unstack(t,"no","list")
t2 =
2×4 table
type a c p
_____ _ ___ ___
type1 1 NaN 0
type2 7 6 NaN