Clear Filters
Clear Filters

Matlab Report Generation Table format datetime string

4 views (last 30 days)
I want to put tables in a report. The table contains a colum of type datetime. Matlab fails to display the datetime and furthermore messes up the the colum headers. Bonus question: How can I remove the quotation marks from the string in the table?
Thanks
Code:
import mlreportgen.report.*
import mlreportgen.dom.*
R = Report('test', 'pdf');
open(R);
timeCol = datetime('now');
intCol = 1;
strCol = "abc";
testtable = table(timeCol, intCol, strCol);
MT = MATLABTable(testtable);
add(R, MT);
close(R)
Output:
timeCol intCol
1 "abc"

Accepted Answer

Eric
Eric on 19 Jun 2019
To display the time, convert the datetime variable to a string. You can do this by calling the STRING function.
The double quotes are there because thats the display output of the MATLAB table shows. To remove the double quotes, use a CATEGORICAL array. See below code snippet.
import mlreportgen.report.*
import mlreportgen.dom.*
R = Report('test', 'pdf');
open(R);
timeCol = categorical(string(datetime('now')));
intCol = 1;
strCol = categorical("abc");
testtable = table(timeCol, intCol, strCol);
MT = MATLABTable(testtable);
add(R, MT);
close(R)

More Answers (0)

Categories

Find more on Tables in Help Center and File Exchange

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!