The detectImportOptions not able to recognize and use 2nd row of a file as column name
조회 수: 9 (최근 30일)
이전 댓글 표시
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
채택된 답변
dpb
2025년 8월 6일
편집: dpb
2025년 8월 7일
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
추가 답변 (1개)
Meg Noah
2025년 8월 6일
filename = 'data.csv';
dataTable = readtable(filename,'NumHeaderLines',1)
dataTable =
1×4 table
second Volt Volt_1 Ampere
______ ____ ______ ______
1 2 4 45
댓글 수: 7
Meg Noah
2025년 8월 7일
@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
2025년 8월 8일
편집: dpb
2025년 8월 8일
"...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.
참고 항목
카테고리
Help Center 및 File Exchange에서 Calendar에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
