Info

此问题已关闭。 请重新打开它进行编辑或回答。

how to read many csvfile?

1 次查看(过去 30 天)
suyeon kim
suyeon kim 2018-2-2
关闭: MATLAB Answer Bot 2021-8-20
i want to read many csvfiles and run it at once. how to read and run many csvfiles?
i use for loop, dlmread. but there are not worked.
someone help me.thank you.

回答(1 个)

Prajith Chilummula
Hi suryeon kim,
dlmread() reads numeric data into matrix.
For example (files used in the code are attached),
fileNamesArray= {1.csv,2.csv};
data = cell(numel(fileNamesArray),2);
data(:,1) = regexprep(fileNames, '.csv','');
for i = 1: numel(fileNamesArray)
data{i,2} = dlmread(fileNamesArray{i});
end
Please refer this document for further information:
https://www.mathworks.com/help/releases/R2017b/matlab/ref/dlmread.html
The normal recommendation for dealing with csv files having data in any type is to use
textscan(), but textscan() is harder to deal with when there are string fields with missing values.
Textscan reads the data into a cell array and it matches the data in the file with the formatSpec.
Example:
fileNamesArray= {1.csv,2.csv};
for i = 1: numel(fileNamesArray)
f = fopen(fileNamesArray(i));
X = textscan(f, %s%s%s’, 'Delimiter', ',', 'HeaderLines', 1);
fclose(f);
end
Please refer this document for further information:
https://www.mathworks.com/help/releases/R2017b/matlab/ref/textscan.html
Hope this answers the query.

此问题已关闭。

标签

Community Treasure Hunt

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

Start Hunting!