How to display a table without it showing "var1"?
43 views (last 30 days)
Show older comments
Dirk te Brake
on 16 Dec 2021
Commented: Dirk te Brake
on 16 Dec 2021
x = datetime(2021,1,1) + caldays(0:4);
e = [1,6,3,2,8;4,5,6,7,7;2,4,7,8,6;]
disp(x)
t = table(x',e')
b = t(sum(e)' == max(sum(e))',1)
tstring = evalc('disp(b)')
disp(['test',num2str(tstring),' end of test.'])
I want to display it like this:
"test 05-Jan-2021 end of test."
And is there a way that i can get 5 as an variable so i can use it in other formula's?
Thanks for taking a look at my question!
0 Comments
Accepted Answer
Stephen23
on 16 Dec 2021
Edited: Stephen23
on 16 Dec 2021
Tables are a container class: they contain data of other classes. So it is very important to distinguish between the table itself (or a subtable of it) which is a container, and the data store within the table. How to refer to parts of the table itself (i.e. to the container) vs. how to refer to its contents (e.g. numeric, text, datetime, etc.) is explained here:
Instead of trying to refer to a table itself you need to refer to the content of the table, e.g. using indexing with curly braces or by using the variable/column name:
x = datetime(2021,1,1) + caldays(0:4).';
e = [1,6,3,2,8;4,5,6,7,7;2,4,7,8,6].';
t = table(x,e)
v = sum(t.e,2)
y = max(v)==v
sprintf('test %s end of test.',t.x(y))
"And is there a way that i can get 5 as an variable so i can use it in other formula's?"
Either:
d = day(t.x(y))
d = t.x(y).Day
Respectively:
More Answers (0)
See Also
Categories
Find more on Tables 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!