manipulate structure field data to create a table

1 view (last 30 days)
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:
1x4 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.

Accepted Answer

Peter Perkins
Peter Perkins on 3 May 2019
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

More Answers (0)

Categories

Find more on Tables in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!