How to reorganize the data in table?

3 views (last 30 days)
I have a large table like this: (the first row is column name "E" and "M")
I want to know how many "blc" has "m" and how many "blc" has "f" and the same thin for "whi". Any idea how?

Accepted Answer

Cris LaPierre
Cris LaPierre on 9 Aug 2020
Use groupsummary. Group the data first by E then by M. Groupsummary will tell you the count of each group. Here's an example using the name data for the table.
E=["blc";"whi";"blc";"blc";"whi";"blc";"blc";"blc";"whi";"whi";"whi";"whi"];
M=["m";"f";"f";"f";"f";"m";"f";"f";"m";"m";"m";"f"];
data=table(E,M);
summaryTbl = groupsummary(data,["E","M"])
summaryTbl =
4×3 table
E M GroupCount
_____ ___ __________
"blc" "f" 4
"blc" "m" 2
"whi" "f" 3
"whi" "m" 3
  4 Comments
Cris LaPierre
Cris LaPierre on 10 Aug 2020
Cell vs string. Might have an older version of MATLAB.
madhan ravi
madhan ravi on 10 Aug 2020
Edited: madhan ravi on 10 Aug 2020
Ah true, but groupsummary() was introduced in 2018a hence the OP has access to string classes which was there even before 2018 (2016b I believe).

Sign in to comment.

More Answers (0)

Categories

Find more on Numeric Types 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!