MATLAB Answers

How can I loop my CSV reader?

38 views (last 30 days)
onamaewa
onamaewa on 9 Nov 2018
Commented: Walter Roberson on 10 Nov 2018
My files are in 1 folder which I set in Matlab as my Current Folder. The names are: g1, g2, g3, g4, g5, g6, and so on...
Currently, I'm importing using the code below.
h1 = csvread('g1.csv', 9, 0, [9, 0, 10008, 8]);
h2 = csvread('g2.csv', 9, 0, [9, 0, 10008, 8]);
h3 = csvread('g3.csv', 9, 0, [9, 0, 10008, 8]);
h4 = csvread('g4.csv', 9, 0, [9, 0, 10008, 8]);
h5 = csvread('g5.csv', 9, 0, [9, 0, 10008, 8]);
h6 = csvread('g6.csv', 9, 0, [9, 0, 10008, 8]);...
It works, but I know there has to be a way to loop this function. Any ideas on a simple for-loop to complete this task?

  1 Comment

onamaewa
onamaewa on 10 Nov 2018
I'm trying to do something like this.
for (i = 1:10)
csvread('g(i).csv', 9, 0, [9, 0, 10008, 8])
end

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 9 Nov 2018
There are two ways there depending on what order you want to sort them in and if any files are missing.

  2 Comments

onamaewa
onamaewa on 10 Nov 2018
I read the link, but can't follow. I'd like to do something like this:
for (i = 1:10)
csvread('g(i).csv', 9, 0, [9, 0, 10008, 8])
end
Walter Roberson
Walter Roberson on 10 Nov 2018
Well you can't. You have to use techniques such as are described at the link that was posted.
for (i = 1:10)
csvread( sprintf('g(%d).csv', i), 9, 0, [9, 0, 10008, 8])
end

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by