-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathpartitionData.m
27 lines (27 loc) · 1.34 KB
/
partitionData.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function [XTrainUpper,XTrainBottom,XValidUpper,XValidBottom,XTestUpper,XTestBottom,YTrain,YValid,YTest]=partitionData(augimdsUpper,augimdsBottom,TrainRatio,ValidRatio,numAll,labels)
indices=randperm(numAll,numAll);
TrainIdx=indices(1:round(numel(indices)*TrainRatio));
ValidIdx=indices(round(numel(indices)*TrainRatio)+1:round(numel(indices)*(TrainRatio+ValidRatio)));
TestIdx=indices(round(numel(indices)*(TrainRatio+ValidRatio))+1:end);
auimdsTrainaugimdsUpper = partitionByIndex(augimdsUpper,TrainIdx);
auimdsTrainBottom = partitionByIndex(augimdsBottom,TrainIdx);
auimdsValidUpper = partitionByIndex(augimdsUpper,ValidIdx);
auimdsValidBottom = partitionByIndex(augimdsBottom,ValidIdx);
auimdsTestUpper = partitionByIndex(augimdsUpper,TestIdx);
auimdsTestBottom = partitionByIndex(augimdsBottom,TestIdx);
XTrainUpper=readall(auimdsTrainaugimdsUpper);
XTrainUpper=cat(4,XTrainUpper.input{:});
XTrainBottom=readall(auimdsTrainBottom);
XTrainBottom=cat(4,XTrainBottom.input{:});
XValidUpper=readall(auimdsValidUpper);
XValidUpper=cat(4,XValidUpper.input{:});
XValidBottom=readall(auimdsValidBottom);
XValidBottom=cat(4,XValidBottom.input{:});
XTestUpper=readall(auimdsTestUpper);
XTestUpper=cat(4,XTestUpper.input{:});
XTestBottom=readall(auimdsTestBottom);
XTestBottom=cat(4,XTestBottom.input{:});
YTrain=labels(TrainIdx);
YValid=labels(ValidIdx);
YTest=labels(TestIdx);
end