How to collapse rows of a table?

8 views (last 30 days)
JFz
JFz on 24 Aug 2015
Commented: JFz on 24 Aug 2015
Hi,
I have a table with 3 columns but many rows. Some rows are the same on column 1 and 2 but but not on column 3. Since column 3 are numbers, how to collapse the table with rows that have the same col 1 and col2 and average on col 3?
For example, the table is
Symbol Date Price
NFLX 7/28/2015 100
NFLX 7/28/2015 101
AAPL 7/28/2015 150
I would like to make it as two rows:
NFLX 7/28/2015 105
AAPL 7/28/2015 150
How to do that?
Thanks for any help!
Jennifer

Accepted Answer

Sean de Wolski
Sean de Wolski on 24 Aug 2015
T = table({'NFLX';'NFLX';'AAPL'},datetime([2015;2015;2015],[7;7;7],[28;28;28]),[100;101;150] ,'VariableNames',{'Symbol' 'Date' 'Price'})
% Dates have to be made numeric
T.Date = datenum(T.Date)
% Group fun
varfun(@mean,T,'GroupingVariables',{'Symbol','Date'})
  2 Comments
JFz
JFz on 24 Aug 2015
Thanks! You are so quick! Let me try it.
JFz
JFz on 24 Aug 2015
Sean, Thank you so much! It works like a charm!
Jennifer

Sign in to comment.

More Answers (0)

Categories

Find more on Language Fundamentals in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!