cannot load csv file
4 views (last 30 days)
Show older comments
Hi , I am new to matlab and I face this error each time I try to load my csv file using the dbload command in iris TOOLBOX.
d=dbload('data.csv')
d =
struct with no fields.
how can I solve this problem?
0 Comments
Answers (1)
Image Analyst
on 9 May 2025
Edited: Image Analyst
on 9 May 2025
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
5 Comments
Image Analyst
on 9 May 2025
Try this:
d = importdata('data.csv')
numericalData = d.data;
% Get 7 column names. Adjust column indexes as needed.
columnNames = d.textdata(1, 2:end-1)
% Convert to a table if you want to associate the variables with the columns.
t = array2table(numericalData, VariableNames = columnNames)
Walter Roberson
on 9 May 2025
My speculation is that dbload() is having problems because the first field is not quoted with "" but still contains characters ('Q')
If so then possibly the 'preprocess' option of dbload() would be useful. 'proprocess' takes a function handle, with the function accepting a character vector and returning a character vector. You could put in a function handle to a function that puts " quotes around the first portion of text, such as
d = dbload('data.csv', 'preprocess', @PrePro)
function S = PrePro(S)
S = regexprep(S, '^(\w+)', '"$1"', 'lineanchors');
end
See Also
Categories
Find more on Text Files in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!