readtable doesn`t work as prior version (2018b vs 2023a)

25 Ansichten (letzte 30 Tage)
동철
동철 am 28 Mär. 2023
Kommentiert: Walter Roberson am 28 Mär. 2023
readtable function @2018b can read blank and numbers as text.
but @2023a cannot read like @2018b
Matlab says "you can use 'T = readtable(filename,'Format','auto')'.", but it doesn`t work at all.
Is there any other way to use readtable function @2023a like 2018b??
Para_A = readtable(app.FileEditField.Value,'sheet', 'A'); # @2018b
Para_A = readtable(app.FileEditField.Value,'sheet', 'A', 'Format', 'auto'); # @2023a --> does not work.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 28 Mär. 2023
Use detectImportOptions to create an options structure. Use setvartype() on the structure to set the column to be either char or string. Now readtable passing in the options structure
  2 Kommentare
동철
동철 am 28 Mär. 2023
Thank you for reply!
I did use 'opts' by detectImportOptions and setvartype, but then readtable didn`t work.
opts = detectImportOptions(A.xlsx, 'sheet', 'Constant','VariableNamesRange',1,'DataRange', 'A2'); % passed
opts = setvartype(opts,{'Type','Name','Unit','Description'},'string'); % passed
Tab_Param = readtable(A.xlsx,opts); % error occured
Or, is there any way to use just like 2018b? (Matlab just recommend use below phrase.)
T = readtable(filename,'Format','auto') % error occured ("Cannot open spreadsheet")
Walter Roberson
Walter Roberson am 28 Mär. 2023
filename = "A.xlsx";
opts = detectImportOptions(filename, 'sheet', 'Constant','VariableNamesRange',1,'DataRange', 'A2');
opts = setvartype(opts,{'Type','Name','Unit','Description'},'string');
Tab_Param = readtable(filename,opts);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by