How Can I Perform Loop By Checking Values of Matrix

Hi all, I am wondering how should i go about to do a loop by checking values in a matrix, removing them until all the unwanted columns are removed ?
Example i have a matrix of 1 x 24 named as importance, 4 of them is smaller than 0.2, i would like to remove them and based on the remainder, run through my code again and once the one matrix of 1 x 20 is calculated, check if it's lesser than 0.2 and repeat the process.
my own code for now is
variableimpt = modelTB_ShaftPower.OOBPermutedVarDeltaError
numlabels = 1:24
variableimpt = vertcat(variableimpt,numlabels)
realvariableimpt = variableimpt(1,:) < 0.2; % for which rows is smaller than 0.2
variableimpt(:,realvariableimpt) = []
columnsneeded = variableimpt (2,:)
Xtrain = Xtrain(:,columnsneeded)
Xtest = Xtest(:,columnsneeded)
modelTB_ShaftPower = TreeBagger(100,Xtrain,Ytrain(:,1),'method','regression','oobvarimp','on')
[yfitTB_ShaftPower,~] = predict(modelTB_ShaftPower,Xtest)

2 commentaires

Crixus - what is the remainder in your above code? What is the new set of data that you would want to check for values smaller than 0.2?
crixus
crixus le 8 Mar 2015
Modifié(e) : crixus le 8 Mar 2015
my remainder here represent the first round after the few columns that have their variable importance of less than 0.2 remove. Anyway, i got this problem solved, thanks for your reply

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Question posée :

le 7 Mar 2015

Modifié(e) :

le 8 Mar 2015

Community Treasure Hunt

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

Start Hunting!

Translated by