The detectImportOptions not able to recognize and use 2nd row of a file as column name
62 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Deep Shah
el 6 de Ag. de 2025 a las 20:37
filename = 'data.csv';
opts = detectImportOptions(filename);
% Adjust options to use the second row as headers
opts.DataLines = [3 Inf]; % Start reading data from the third row
opts.VariableNamesLine = 2; % Use the second row for column names
% Read the table
dataTable = readtable(filename, opts);
The above code is not able to return a data table with the columns names same as the names mention in second row of the file, Instead it renames the columns in datatable as Var1, Var2, Var3 and Var4 instead of second, volt, volt and Ampere.
0 comentarios
Respuesta aceptada
dpb
el 6 de Ag. de 2025 a las 21:54
Editada: dpb
el 7 de Ag. de 2025 a las 20:45
l=readlines('data.csv')
tData=readtable('data.csv','headerlines',1,'readvariablenames',1)
opt=detectImportOptions('data.csv','headerlines',1)
tData=readtable('data.csv',opt)
opt=detectImportOptions('data.csv')
opt.DataLines=3;
opt.VariableNamesLine=2;
opt.VariableTypes=repmat({'double'},1,4);
tData=readtable('data.csv',opt)
If know there is a header line, it's better to use that information first; that gives detectImportOptions a lot better chancee to interpret the file as intended, rather than how it actually is.
Using the opt struct returned without the aid of the '[Num]HeaderLines' parameter takes several fixups including that the initial variable is detected as being a string rather than numeric; setting the option for the DataLines parameter in the opt struct doesn't correct for the fact that the parsing has already been done without knowing about the header line.
0 comentarios
Más respuestas (1)
Meg Noah
el 6 de Ag. de 2025 a las 21:56
filename = 'data.csv';
dataTable = readtable(filename,'NumHeaderLines',1)
dataTable =
1×4 table
second Volt Volt_1 Ampere
______ ____ ______ ______
1 2 4 45
7 comentarios
Meg Noah
el 7 de Ag. de 2025 a las 20:43
@Walter Roberson OK - now I know where to look! On my browser, it is way down and doesn't display unless I scroll down to it. Too many 'See Alsos...' and 'Categories...'.
dpb
el 8 de Ag. de 2025 a las 13:42
Editada: dpb
el 8 de Ag. de 2025 a las 17:32
"...it is way down and doesn't display unless I scroll down to it. Too many 'See Alsos...' and 'Categories...'. "
Agreed. There's way too much wasted white space even in "compact" view.
At a minimum, the Tags and Release ought to be at the top with the Q?; "See Also"(*) and the advertising content can follow.
(*) If it were more smarter, it might make at least a little sense, but it's so often so far off-base as to be worse than none. Just looked at the top link in the other thread about Desktop Layout with R2025a -- the thread is dated 2011.
Ver también
Categorías
Más información sobre Calendar en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!