Clear Filters
Clear Filters

How to find the frequency of unique rows in 3 columns of a table?

2 views (last 30 days)
I have a table (T) of the following form:
Var1 Var2 Var3
Car Red X
Dog Blue Y
Car Red X
TV Green Z
TV Yellow Z
TV Green Z
Car Red X
Where for example the first row is T.Var1(1)=Car, T.Var2(1)=red, T.Var3(1)= X.
I would like to return
Var1 Var2 Var3 Var4
Car Red X 3
Dog Blue Y 1
TV Green Z 2
TV Yellow Z 1
Any assistance you can provide is much appreciated!

Accepted Answer

Paolo on 25 Jun 2018
Edited: Paolo on 26 Jun 2018
Var1 = {'Car';'Dog';'Car';'TV';'TV';'TV';'Car'}
Var2 = {'red';'blue';'red';'green';'yellow';'green';'red'};
Var3 = {'X';'Y';'X';'Z';'Z';'Z';'X'};
t = table(Var1,Var2,Var3);
[tt ia ic] = unique(t);
Var4 = histc(ic,unique(ic));
tt.Var4 = Var4;
tt is the required table.

More Answers (0)


Find more on Line Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!