use of train and test data
3 views (last 30 days)
Show older comments
Elahe Karimi
on 18 May 2019
Edited: Elahe Karimi
on 18 May 2019
hello,
I've used this code to separate data to test and train .for example i have a dataset include of 6 image. when i run this code, training data is correct and have 3 image but testing data is like this image :(The third image is repeated again).
I can't understand what is the problem .
Please help me
thank you
idx = 1:numImageFiles ;
PTrain = 0.50 ;
Ptest = 0.50;
train_idx = baseFileNames(1:round(PTrain*numImageFiles)); % training indices
test_idx = baseFileNames(round(Ptest*numImageFiles):end,:) ; %test
0 Comments
Accepted Answer
Walter Roberson
on 18 May 2019
You use round(PTrain*numImageFiles) as the upper limit for train_idx, and you use the same round(PTrain*numImageFiles) as the lower limit for test_idx . That is going to include round(PTrain*numImageFiles) exactly in both train_idx and test_idx .
3 Comments
Walter Roberson
on 18 May 2019
The round is not the problem. Consider you are doing the equivalent of
x(1:3) %index 1, 2, 3
x(3:6) %index 3, 4, 5, 6
When your first range ends at N, then your second range needs to start from at least one greater than N or else you will have overlap.
More Answers (0)
See Also
Categories
Find more on Pattern Recognition and Classification 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!