Filter löschen
Filter löschen

Matlab Report Generation Table format datetime string

4 Ansichten (letzte 30 Tage)
Robert Miesen
Robert Miesen am 18 Jun. 2019
Beantwortet: Eric am 19 Jun. 2019
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"

Akzeptierte Antwort

Eric
Eric am 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)

Weitere Antworten (0)

Kategorien

Mehr zu Tables finden Sie in Help Center und File Exchange

Produkte


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by