Decision Tree to If-Else Rules

16 views (last 30 days)
Amrit Kumar Verma
Amrit Kumar Verma on 6 Mar 2019
Answered: Koorosh Aslansefat on 20 May 2020
Is there any method to convert directly the decision tree from Classification Tree Viewer to If-Else rules ?
  1 Comment
Mario Buser
Mario Buser on 9 Jul 2019
Would be interested in a solution as well. WEKA, for example, is able to export if/else statements.

Sign in to comment.

Answers (1)

Koorosh Aslansefat
Koorosh Aslansefat on 20 May 2020
I am not sure what exactly you want but the following code can be useful considering that you saved the decision tree as "tc".
CP = tc.CutPoint;
NC = tc.NodeClass;
for ii = 1:size(CP,1)
if ~isnan(CP(ii))
fprintf('if x%d < %f then node %d elseif x%d >= %f then node %d else %d \n',str2num(NC{ii}),CP(ii),ii+1,str2num(NC{ii}),CP(ii), ii+2,ii)
elseif isnan(CP(ii))
fprintf('Class = %d \n',str2num(NC{ii}))
end
end
This equal to veiw(tc)

Categories

Find more on Statistics and Machine Learning Toolbox 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!