Saving the output from a for loop
1 view (last 30 days)
Show older comments
Elizabeth Vieira
on 21 Jan 2016
Commented: Star Strider
on 22 Jan 2016
I am using the following script in MatlabR2015a:
CVO = cvpartition(y2,'k',10);
C=zeros(96,1)
for i = 1:CVO.NumTestSets
trIdx = CVO.training(i);
teIdx = CVO.test(i);
mdl = fitcnb(x1(trIdx, :),y2(trIdx, :),'Distribution', 'kernel')
[label, Posterior] = predict(mdl,x1(teIdx, :))
C(teIdx)=Posterior (:,2);
end
[X,Y,T,AUC] = perfcurve(y2,C,'true','NBoot', 1000); % Curva ROC para os dados de teste do crossval
c1=round(C);
CMat=confusionmat(y1,c1);
How can I save in my workspace the model from each iteration?
Many Thanks,
Elizabeth Vieira
0 Comments
Accepted Answer
Star Strider
on 21 Jan 2016
You can save it as a cell array (note the curly brackets ‘{}’):
mdl{i} = fitcnb(x1(trIdx, :),y2(trIdx, :),'Distribution', 'kernel');
If you want to save the ‘mdl’ cell array after the loop, use the save function to save it to a .mat file. See the documentation for save for details.
3 Comments
More Answers (0)
See Also
Categories
Find more on Naive Bayes 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!