Combine multiple datastores in for loop for Leave one out cross validation

3 views (last 30 days)
I have 30 imagedatastores stored in a cell arrays bigImgDS{30,1}.
Now I want select one datastore in cell array as test and combine all other as train in one iteration of loop. But it doesnt allow me to do that
N = numel(bigImgDS)
for i =1:N
test = Big_ImgDs{i,1};
train = Big_ImgDs{[1:end ~=i],1}
end

Answers (1)

Anmol Dhiman
Anmol Dhiman on 10 Dec 2020
Hi Mudit,
Use the following code for looping in the cell array
for i =1:N
test = Big_ImgDs{i};
train = Big_ImgDs;
train(i)=[];
end
Regards,
Anmol Dhiman
  3 Comments
Mudit Paliwal
Mudit Paliwal on 10 Dec 2020
I tried that out Anmol. But Split ImageDatastore labels by proportions - MATLAB splitEachLabel (mathworks.com) doesnt work on combine. Thats the problem the combine datastore doesnt behave the same way as a Image datastore

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!