Saving the output from a for loop

10 visualizaciones (últimos 30 días)
Elizabeth Vieira
Elizabeth Vieira el 21 de En. de 2016
Comentada: Star Strider el 22 de En. de 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

Respuesta aceptada

Star Strider
Star Strider el 21 de En. de 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 comentarios
Elizabeth Vieira
Elizabeth Vieira el 22 de En. de 2016
Many thanks!
Star Strider
Star Strider el 22 de En. de 2016
My pleasure!

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by