Main Content

Classification Trees

Binary decision trees for multiclass learning

To interactively grow a classification tree, use the Classification Learner app. For greater flexibility, grow a classification tree using fitctree at the command line. After growing a classification tree, predict labels by passing the tree and new predictor data to predict.


Classification LearnerTrain models to classify data using supervised machine learning


ClassificationTree PredictClassify observations using decision tree classifier


expand all

fitctreeFit binary decision tree for multiclass classification
compactCompact tree
pruneProduce sequence of classification subtrees by pruning
cvlossClassification error by cross validation
limeLocal interpretable model-agnostic explanations (LIME)
partialDependenceCompute partial dependence
plotPartialDependenceCreate partial dependence plot (PDP) and individual conditional expectation (ICE) plots
predictorImportanceEstimates of predictor importance for classification tree
shapleyShapley values
surrogateAssociationMean predictive measure of association for surrogate splits in classification tree
viewView classification tree
crossvalCross-validated decision tree
kfoldEdgeClassification edge for cross-validated classification model
kfoldLossClassification loss for cross-validated classification model
kfoldMarginClassification margins for cross-validated classification model
kfoldPredictClassify observations in cross-validated classification model
kfoldfunCross-validate function for classification
lossClassification error
resubLossClassification error by resubstitution
compareHoldoutCompare accuracies of two classification models using new data
edgeClassification edge
marginClassification margins
resubEdgeClassification edge by resubstitution
resubMarginClassification margins by resubstitution
testckfoldCompare accuracies of two classification models by repeated cross-validation
predictPredict labels using classification tree
resubPredictPredict resubstitution labels of classification tree
gatherGather properties of Statistics and Machine Learning Toolbox object from GPU


ClassificationTreeBinary decision tree for multiclass classification
CompactClassificationTreeCompact classification tree
ClassificationPartitionedModelCross-validated classification model


Train Decision Trees Using Classification Learner App

Create and compare classification trees, and export trained models to make predictions for new data.

Supervised Learning Workflow and Algorithms

Understand the steps for supervised learning and the characteristics of nonparametric classification and regression functions.

Decision Trees

Understand decision trees and how to fit them to data.

Growing Decision Trees

To grow decision trees, fitctree and fitrtree apply the standard CART algorithm by default to the training data.

View Decision Tree

Create and view a text or graphic description of a trained decision tree.

Visualize Decision Surfaces of Different Classifiers

This example shows how to visualize the decision surface for different classification algorithms.

Splitting Categorical Predictors in Classification Trees

Learn about the heuristic algorithms for optimally splitting categorical variables with many levels while growing decision trees.

Improving Classification Trees and Regression Trees

Tune trees by setting name-value pair arguments in fitctree and fitrtree.

Prediction Using Classification and Regression Trees

Predict class labels or responses using trained classification and regression trees.

Predict Out-of-Sample Responses of Subtrees

Predict responses for new data using a trained regression tree, and then plot the results.

Predict Class Labels Using ClassificationTree Predict Block

Train a classification decision tree model using the Classification Learner app, and then use the ClassificationTree Predict block for label prediction.

Human Activity Recognition Simulink Model for Fixed-Point Deployment

Generate code from a classification Simulink® model prepared for fixed-point deployment.

Identify Punch and Flex Hand Gestures Using Machine Learning Algorithm on Arduino Hardware (Simulink Support Package for Arduino Hardware)

This example shows how to use the Simulink® Support Package for Arduino® Hardware to identify punch and flex hand gestures using a machine learning algorithm.