Looping over paths, more than one loop
6 views (last 30 days)
Show older comments
Dear all,
suppose I have a vector of names:
vectorOfNames = {'A','B','C'};
and my goal is to iterate through this vector
for s = 1:length(vectorOfNames)
% code of variable 1
path1 = strcat('AAAAAAAA/',char(vectorOfNames(s)),'/AAAAAAA');
keepCode(1,s) = {path1};
% code of variable 2
path2 = strcat('BBBBBBBBbbbb/',char(vectorOfNames(s)),'/bbbbbbbbb');
keepCode(2,s) = {path2};
% code of variable 3
path3 = strcat('ccccccc/',char(vectorOfNames(s)));
keepCode(3,s) = {path3};
end
and use each of name to get the paths below, which are stored in an array:
My question: is there any possibility to modify this code to iterate over 2 loops, the first loop over the names (as is) and the second loop over the paths, given that the names are part of the paths and are variable. In this example, there are only 3 types of paths, but in fact I have 35 of them, and doing it the way I showed just makes the code too extensive.
Kind regards,
Joanna Przeworska
1 Comment
Bob Thompson
on 1 Mar 2021
I'm sure what you're asking about is possible, but I also don't entirely understand. How would looping over the path change from what you have now? As I see it your loop generates a matrix of file locations for all possible file and folder locations. Are you trying to reduce the number of possible results, or something else? If you are trying to reduce the number of results, how are you correlating the files and paths?
Accepted Answer
Jan
on 2 Mar 2021
Edited: Jan
on 2 Mar 2021
I do not understand, what your inputs are exactly. But maybe this idea helps you:
keepCode = cell(length(vectorOfNames), length(whatEver)); % Pre-allocation
for s1 = 1:length(vectorOfNames)
for s2 = 1:length(whatEver)
folder = strcat(wharEver{s2}, vectorOfNames{s1}, '/AAAAAAA');
keepCode{s1, s2} = folder;
end
end
Notes: cellArray{k} is faster than char(cellArray(k)).
0 Comments
More Answers (2)
See Also
Categories
Find more on Loops and Conditional Statements 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!