Comparing rows of a table
15 views (last 30 days)
Show older comments
Hey all,
I have a table, this table represents the value of creation coefficient (CC) and RMSE for 3 of my models. Now in each row, I want to compare CC and RMSE rows by rows. I would like to print the name of each model that has the nearest value to one (in comparison with each model) for CC after existing rows, and similarly, type then name of that model which has a lower value of RMSE.
So the output is a table just like that I attached but with 2 extra columns after existing columns now, one for CC and one for RMSE.
Here is a simple example:
Before:
After:
Please tell me how I can do this,
Thank you so much
0 Comments
Accepted Answer
Tommy
on 10 Apr 2020
Let me know if this works:
[~,i] = min(1-[TEST.model1_CC, TEST.model2_CC, TEST.model3_CC],[],2);
[~,i2] = min([TEST.model1_RMSE, TEST.model2_RMSE, TEST.model3_RMSE],[],2);
names = TEST{1,{'model1','model2','model3'}}';
TEST.CC_CHECK = names(i);
TEST.RMSE_CHECK = names(i2);
3 Comments
More Answers (0)
See Also
Categories
Find more on Time Series Objects 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!