How to reorganize the data in table?

2 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)

Tags

Community Treasure Hunt

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

Start Hunting!