A random forest regressor.
A random forest is a meta estimator that fits a number of classifying decision trees on various sub-samples of the dataset and uses averaging to improve the predictive accuracy and control over-fitting. The sub-sample size is controlled with the max_samples parameter if bootstrap=True (default), otherwise the whole dataset is used to build each tree.
Read more in the User Guide.
The number of trees in the forest.
Changed in version 0.22: The default value of n_estimators changed from 10 to 100 in 0.22.
The function to measure the quality of a split. Supported criteria are “mse” for the mean squared error, which is equal to variance reduction as feature selection criterion, and “mae” for the mean absolute error.
New in version 0.18: Mean Absolute Error (MAE) criterion.
The maximum depth of the tree. If None, then nodes are expanded until all leaves are pure or until all leaves contain less than min_samples_split samples.
The minimum number of samples required to split an internal node:
Changed in version 0.18: Added float values for fractions.
The minimum number of samples required to be at a leaf node. A split point at any depth will only be considered if it leaves at least min_samples_leaf training samples in each of the left and right branches. This may have the effect of smoothing the model, especially in regression.
Changed in version 0.18: Added float values for fractions.
The minimum weighted fraction of the sum total of weights (of all the input samples) required to be at a leaf node. Samples have equal weight when sample_weight is not provided.
The number of features to consider when looking for the best split:
Note: the search for a split does not stop until at least one valid partition of the node samples is found, even if it requires to effectively inspect more than max_features features.
Grow trees with max_leaf_nodes in best-first fashion. Best nodes are defined as relative reduction in impurity. If None then unlimited number of leaf nodes.
A node will be split if this split induces a decrease of the impurity greater than or equal to this value.
The weighted impurity decrease equation is the following:
where N is the total number of samples, N_t is the number of samples at the current node, N_t_L is the number of samples in the left child, and N_t_R is the number of samples in the right child.
N, N_t, N_t_R and N_t_L all refer to the weighted sum, if sample_weight is passed.
New in version 0.19.
Threshold for early stopping in tree growth. A node will split if its impurity is above the threshold, otherwise it is a leaf.
Deprecated since version 0.19: min_impurity_split has been deprecated in favor of min_impurity_decrease in 0.19. The default value of min_impurity_split has changed from 1e-7 to 0 in 0.23 and it will be removed in 1.0 (renaming of 0.25). Use min_impurity_decrease instead.
Whether bootstrap samples are used when building trees. If False, the whole dataset is used to build each tree.
whether to use out-of-bag samples to estimate the R^2 on unseen data.
The number of jobs to run in parallel. fit, predict, decision_path and apply are all parallelized over the trees. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
Controls both the randomness of the bootstrapping of the samples used when building trees (if bootstrap=True) and the sampling of the features to consider when looking for the best split at each node (if max_features < n_features). See Glossary for details.
Controls the verbosity when fitting and predicting.
When set to True, reuse the solution of the previous call to fit and add more estimators to the ensemble, otherwise, just fit a whole new forest. See the Glossary.
Complexity parameter used for Minimal Cost-Complexity Pruning. The subtree with the largest cost complexity that is smaller than ccp_alpha will be chosen. By default, no pruning is performed. See Minimal Cost-Complexity Pruning for details.
New in version 0.22.
If bootstrap is True, the number of samples to draw from X to train each base estimator.
New in version 0.22.
The child estimator template used to create the collection of fitted sub-estimators.
The collection of fitted sub-estimators.
The impurity-based feature importances.
The number of features when fit is performed.
The number of outputs when fit is performed.
Score of the training dataset obtained using an out-of-bag estimate. This attribute exists only when oob_score is True.
Prediction computed with out-of-bag estimate on the training set. This attribute exists only when oob_score is True.
See also
The default values for the parameters controlling the size of the trees (e.g. max_depth, min_samples_leaf, etc.) lead to fully grown and unpruned trees which can potentially be very large on some data sets. To reduce memory consumption, the complexity and size of the trees should be controlled by setting those parameter values.
The features are always randomly permuted at each split. Therefore, the best found split may vary, even with the same training data, max_features=n_features and bootstrap=False, if the improvement of the criterion is identical for several splits enumerated during the search of the best split. To obtain a deterministic behaviour during fitting, random_state has to be fixed.
The default value max_features="auto" uses n_features rather than n_features / 3. The latter was originally suggested in [1], whereas the former was more recently justified empirically in [2].
P. Geurts, D. Ernst., and L. Wehenkel, “Extremely randomized trees”, Machine Learning, 63(1), 3-42, 2006.
apply(X)
Apply trees in the forest to X, return leaf indices.
decision_path(X)
Return the decision path in the forest.
fit(X, y[, sample_weight])
Build a forest of trees from the training set (X, y).
get_params([deep])
Get parameters for this estimator.
predict(X)
Predict regression target for X.
score(X, y[, sample_weight])
Return the coefficient of determination \(R^2\) of the prediction.
set_params(**params)
Set the parameters of this estimator.
Apply trees in the forest to X, return leaf indices.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
For each datapoint x in X and for each tree in the forest, return the index of the leaf x ends up in.
Return the decision path in the forest.
New in version 0.18.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
Return a node indicator matrix where non zero elements indicates that the samples goes through the nodes. The matrix is of CSR format.
The columns from indicator[n_nodes_ptr[i]:n_nodes_ptr[i+1]] gives the indicator value for the i-th estimator.
The impurity-based feature importances.
The higher, the more important the feature. The importance of a feature is computed as the (normalized) total reduction of the criterion brought by that feature. It is also known as the Gini importance.
Warning: impurity-based feature importances can be misleading for high cardinality features (many unique values). See sklearn.inspection.permutation_importance as an alternative.
The values of this array sum to 1, unless all trees are single node trees consisting of only the root node, in which case it will be an array of zeros.
Build a forest of trees from the training set (X, y).
The training input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csc_matrix.
The target values (class labels in classification, real numbers in regression).
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.
Get parameters for this estimator.
If True, will return the parameters for this estimator and contained subobjects that are estimators.
Parameter names mapped to their values.
Predict regression target for X.
The predicted regression target of an input sample is computed as the mean predicted regression targets of the trees in the forest.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
The predicted values.
Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
Estimator parameters.
Estimator instance.


A random forest regressor.
A random forest is a meta estimator that fits a number of classifying decision trees on various sub-samples of the dataset and uses averaging to improve the predictive accuracy and control over-fitting. The sub-sample size is controlled with the max_samples parameter if bootstrap=True (default), otherwise the whole dataset is used to build each tree.
Read more in the User Guide.
The number of trees in the forest.
Changed in version 0.22: The default value of n_estimators changed from 10 to 100 in 0.22.
The function to measure the quality of a split. Supported criteria are “mse” for the mean squared error, which is equal to variance reduction as feature selection criterion, and “mae” for the mean absolute error.
New in version 0.18: Mean Absolute Error (MAE) criterion.
The maximum depth of the tree. If None, then nodes are expanded until all leaves are pure or until all leaves contain less than min_samples_split samples.
The minimum number of samples required to split an internal node:
Changed in version 0.18: Added float values for fractions.
The minimum number of samples required to be at a leaf node. A split point at any depth will only be considered if it leaves at least min_samples_leaf training samples in each of the left and right branches. This may have the effect of smoothing the model, especially in regression.
Changed in version 0.18: Added float values for fractions.
The minimum weighted fraction of the sum total of weights (of all the input samples) required to be at a leaf node. Samples have equal weight when sample_weight is not provided.
The number of features to consider when looking for the best split:
Note: the search for a split does not stop until at least one valid partition of the node samples is found, even if it requires to effectively inspect more than max_features features.
Grow trees with max_leaf_nodes in best-first fashion. Best nodes are defined as relative reduction in impurity. If None then unlimited number of leaf nodes.
A node will be split if this split induces a decrease of the impurity greater than or equal to this value.
The weighted impurity decrease equation is the following:
where N is the total number of samples, N_t is the number of samples at the current node, N_t_L is the number of samples in the left child, and N_t_R is the number of samples in the right child.
N, N_t, N_t_R and N_t_L all refer to the weighted sum, if sample_weight is passed.
New in version 0.19.
Threshold for early stopping in tree growth. A node will split if its impurity is above the threshold, otherwise it is a leaf.
Deprecated since version 0.19: min_impurity_split has been deprecated in favor of min_impurity_decrease in 0.19. The default value of min_impurity_split has changed from 1e-7 to 0 in 0.23 and it will be removed in 1.0 (renaming of 0.25). Use min_impurity_decrease instead.
Whether bootstrap samples are used when building trees. If False, the whole dataset is used to build each tree.
whether to use out-of-bag samples to estimate the R^2 on unseen data.
The number of jobs to run in parallel. fit, predict, decision_path and apply are all parallelized over the trees. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
Controls both the randomness of the bootstrapping of the samples used when building trees (if bootstrap=True) and the sampling of the features to consider when looking for the best split at each node (if max_features < n_features). See Glossary for details.
Controls the verbosity when fitting and predicting.
When set to True, reuse the solution of the previous call to fit and add more estimators to the ensemble, otherwise, just fit a whole new forest. See the Glossary.
Complexity parameter used for Minimal Cost-Complexity Pruning. The subtree with the largest cost complexity that is smaller than ccp_alpha will be chosen. By default, no pruning is performed. See Minimal Cost-Complexity Pruning for details.
New in version 0.22.
If bootstrap is True, the number of samples to draw from X to train each base estimator.
New in version 0.22.
The child estimator template used to create the collection of fitted sub-estimators.
The collection of fitted sub-estimators.
The impurity-based feature importances.
The number of features when fit is performed.
The number of outputs when fit is performed.
Score of the training dataset obtained using an out-of-bag estimate. This attribute exists only when oob_score is True.
Prediction computed with out-of-bag estimate on the training set. This attribute exists only when oob_score is True.
See also
The default values for the parameters controlling the size of the trees (e.g. max_depth, min_samples_leaf, etc.) lead to fully grown and unpruned trees which can potentially be very large on some data sets. To reduce memory consumption, the complexity and size of the trees should be controlled by setting those parameter values.
The features are always randomly permuted at each split. Therefore, the best found split may vary, even with the same training data, max_features=n_features and bootstrap=False, if the improvement of the criterion is identical for several splits enumerated during the search of the best split. To obtain a deterministic behaviour during fitting, random_state has to be fixed.
The default value max_features="auto" uses n_features rather than n_features / 3. The latter was originally suggested in [1], whereas the former was more recently justified empirically in [2].
P. Geurts, D. Ernst., and L. Wehenkel, “Extremely randomized trees”, Machine Learning, 63(1), 3-42, 2006.
apply(X)
Apply trees in the forest to X, return leaf indices.
decision_path(X)
Return the decision path in the forest.
fit(X, y[, sample_weight])
Build a forest of trees from the training set (X, y).
get_params([deep])
Get parameters for this estimator.
predict(X)
Predict regression target for X.
score(X, y[, sample_weight])
Return the coefficient of determination \(R^2\) of the prediction.
set_params(**params)
Set the parameters of this estimator.
Apply trees in the forest to X, return leaf indices.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
For each datapoint x in X and for each tree in the forest, return the index of the leaf x ends up in.
Return the decision path in the forest.
New in version 0.18.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
Return a node indicator matrix where non zero elements indicates that the samples goes through the nodes. The matrix is of CSR format.
The columns from indicator[n_nodes_ptr[i]:n_nodes_ptr[i+1]] gives the indicator value for the i-th estimator.
The impurity-based feature importances.
The higher, the more important the feature. The importance of a feature is computed as the (normalized) total reduction of the criterion brought by that feature. It is also known as the Gini importance.
Warning: impurity-based feature importances can be misleading for high cardinality features (many unique values). See sklearn.inspection.permutation_importance as an alternative.
The values of this array sum to 1, unless all trees are single node trees consisting of only the root node, in which case it will be an array of zeros.
Build a forest of trees from the training set (X, y).
The training input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csc_matrix.
The target values (class labels in classification, real numbers in regression).
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.
Get parameters for this estimator.
If True, will return the parameters for this estimator and contained subobjects that are estimators.
Parameter names mapped to their values.
Predict regression target for X.
The predicted regression target of an input sample is computed as the mean predicted regression targets of the trees in the forest.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
The predicted values.
Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
Estimator parameters.
Estimator instance.
Release Highlights for scikit-learn 0.24
Plot individual and voting regression predictions
Comparing random forests and the multi-output meta estimator
Combine predictors using stacking
Prediction Latency
Imputing missing values before building an estimator


Apply trees in the forest to X, return leaf indices.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
For each datapoint x in X and for each tree in the forest, return the index of the leaf x ends up in.


Return the decision path in the forest.
New in version 0.18.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
Return a node indicator matrix where non zero elements indicates that the samples goes through the nodes. The matrix is of CSR format.
The columns from indicator[n_nodes_ptr[i]:n_nodes_ptr[i+1]] gives the indicator value for the i-th estimator.


The impurity-based feature importances.
The higher, the more important the feature. The importance of a feature is computed as the (normalized) total reduction of the criterion brought by that feature. It is also known as the Gini importance.
Warning: impurity-based feature importances can be misleading for high cardinality features (many unique values). See sklearn.inspection.permutation_importance as an alternative.
The values of this array sum to 1, unless all trees are single node trees consisting of only the root node, in which case it will be an array of zeros.


Build a forest of trees from the training set (X, y).
The training input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csc_matrix.
The target values (class labels in classification, real numbers in regression).
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.


Get parameters for this estimator.
If True, will return the parameters for this estimator and contained subobjects that are estimators.
Parameter names mapped to their values.


Predict regression target for X.
The predicted regression target of an input sample is computed as the mean predicted regression targets of the trees in the forest.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
The predicted values.


Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).


Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
Estimator parameters.
Estimator instance.


An ensemble of totally random trees.
An unsupervised transformation of a dataset to a high-dimensional sparse representation. A datapoint is coded according to which leaf of each tree it is sorted into. Using a one-hot encoding of the leaves, this leads to a binary coding with as many ones as there are trees in the forest.
The dimensionality of the resulting representation is n_out <= n_estimators * max_leaf_nodes. If max_leaf_nodes == None, the number of leaf nodes is at most n_estimators * 2 ** max_depth.
Read more in the User Guide.
Number of trees in the forest.
Changed in version 0.22: The default value of n_estimators changed from 10 to 100 in 0.22.
The maximum depth of each tree. If None, then nodes are expanded until all leaves are pure or until all leaves contain less than min_samples_split samples.
The minimum number of samples required to split an internal node:
Changed in version 0.18: Added float values for fractions.
The minimum number of samples required to be at a leaf node. A split point at any depth will only be considered if it leaves at least min_samples_leaf training samples in each of the left and right branches. This may have the effect of smoothing the model, especially in regression.
Changed in version 0.18: Added float values for fractions.
The minimum weighted fraction of the sum total of weights (of all the input samples) required to be at a leaf node. Samples have equal weight when sample_weight is not provided.
Grow trees with max_leaf_nodes in best-first fashion. Best nodes are defined as relative reduction in impurity. If None then unlimited number of leaf nodes.
A node will be split if this split induces a decrease of the impurity greater than or equal to this value.
The weighted impurity decrease equation is the following:
where N is the total number of samples, N_t is the number of samples at the current node, N_t_L is the number of samples in the left child, and N_t_R is the number of samples in the right child.
N, N_t, N_t_R and N_t_L all refer to the weighted sum, if sample_weight is passed.
New in version 0.19.
Threshold for early stopping in tree growth. A node will split if its impurity is above the threshold, otherwise it is a leaf.
Deprecated since version 0.19: min_impurity_split has been deprecated in favor of min_impurity_decrease in 0.19. The default value of min_impurity_split has changed from 1e-7 to 0 in 0.23 and it will be removed in 1.0 (renaming of 0.25). Use min_impurity_decrease instead.
Whether or not to return a sparse CSR matrix, as default behavior, or to return a dense array compatible with dense pipeline operators.
The number of jobs to run in parallel. fit, transform, decision_path and apply are all parallelized over the trees. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
Controls the generation of the random y used to fit the trees and the draw of the splits for each feature at the trees’ nodes. See Glossary for details.
Controls the verbosity when fitting and predicting.
When set to True, reuse the solution of the previous call to fit and add more estimators to the ensemble, otherwise, just fit a whole new forest. See the Glossary.
The child estimator template used to create the collection of fitted sub-estimators.
The collection of fitted sub-estimators.
The impurity-based feature importances.
The number of features when fit is performed.
The number of outputs when fit is performed.
One-hot encoder used to create the sparse embedding.
P. Geurts, D. Ernst., and L. Wehenkel, “Extremely randomized trees”, Machine Learning, 63(1), 3-42, 2006.
Moosmann, F. and Triggs, B. and Jurie, F. “Fast discriminative visual codebooks using randomized clustering forests” NIPS 2007
apply(X)
Apply trees in the forest to X, return leaf indices.
decision_path(X)
Return the decision path in the forest.
fit(X[, y, sample_weight])
Fit estimator.
fit_transform(X[, y, sample_weight])
Fit estimator and transform dataset.
get_params([deep])
Get parameters for this estimator.
set_params(**params)
Set the parameters of this estimator.
transform(X)
Transform dataset.
Apply trees in the forest to X, return leaf indices.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
For each datapoint x in X and for each tree in the forest, return the index of the leaf x ends up in.
Return the decision path in the forest.
New in version 0.18.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
Return a node indicator matrix where non zero elements indicates that the samples goes through the nodes. The matrix is of CSR format.
The columns from indicator[n_nodes_ptr[i]:n_nodes_ptr[i+1]] gives the indicator value for the i-th estimator.
The impurity-based feature importances.
The higher, the more important the feature. The importance of a feature is computed as the (normalized) total reduction of the criterion brought by that feature. It is also known as the Gini importance.
Warning: impurity-based feature importances can be misleading for high cardinality features (many unique values). See sklearn.inspection.permutation_importance as an alternative.
The values of this array sum to 1, unless all trees are single node trees consisting of only the root node, in which case it will be an array of zeros.
Fit estimator.
The input samples. Use dtype=np.float32 for maximum efficiency. Sparse matrices are also supported, use sparse csc_matrix for maximum efficiency.
Not used, present for API consistency by convention.
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.
Fit estimator and transform dataset.
Input data used to build forests. Use dtype=np.float32 for maximum efficiency.
Not used, present for API consistency by convention.
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.
Transformed dataset.
Get parameters for this estimator.
If True, will return the parameters for this estimator and contained subobjects that are estimators.
Parameter names mapped to their values.
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
Estimator parameters.
Estimator instance.
Transform dataset.
Input data to be transformed. Use dtype=np.float32 for maximum efficiency. Sparse matrices are also supported, use sparse csr_matrix for maximum efficiency.
Transformed dataset.


An ensemble of totally random trees.
An unsupervised transformation of a dataset to a high-dimensional sparse representation. A datapoint is coded according to which leaf of each tree it is sorted into. Using a one-hot encoding of the leaves, this leads to a binary coding with as many ones as there are trees in the forest.
The dimensionality of the resulting representation is n_out <= n_estimators * max_leaf_nodes. If max_leaf_nodes == None, the number of leaf nodes is at most n_estimators * 2 ** max_depth.
Read more in the User Guide.
Number of trees in the forest.
Changed in version 0.22: The default value of n_estimators changed from 10 to 100 in 0.22.
The maximum depth of each tree. If None, then nodes are expanded until all leaves are pure or until all leaves contain less than min_samples_split samples.
The minimum number of samples required to split an internal node:
Changed in version 0.18: Added float values for fractions.
The minimum number of samples required to be at a leaf node. A split point at any depth will only be considered if it leaves at least min_samples_leaf training samples in each of the left and right branches. This may have the effect of smoothing the model, especially in regression.
Changed in version 0.18: Added float values for fractions.
The minimum weighted fraction of the sum total of weights (of all the input samples) required to be at a leaf node. Samples have equal weight when sample_weight is not provided.
Grow trees with max_leaf_nodes in best-first fashion. Best nodes are defined as relative reduction in impurity. If None then unlimited number of leaf nodes.
A node will be split if this split induces a decrease of the impurity greater than or equal to this value.
The weighted impurity decrease equation is the following:
where N is the total number of samples, N_t is the number of samples at the current node, N_t_L is the number of samples in the left child, and N_t_R is the number of samples in the right child.
N, N_t, N_t_R and N_t_L all refer to the weighted sum, if sample_weight is passed.
New in version 0.19.
Threshold for early stopping in tree growth. A node will split if its impurity is above the threshold, otherwise it is a leaf.
Deprecated since version 0.19: min_impurity_split has been deprecated in favor of min_impurity_decrease in 0.19. The default value of min_impurity_split has changed from 1e-7 to 0 in 0.23 and it will be removed in 1.0 (renaming of 0.25). Use min_impurity_decrease instead.
Whether or not to return a sparse CSR matrix, as default behavior, or to return a dense array compatible with dense pipeline operators.
The number of jobs to run in parallel. fit, transform, decision_path and apply are all parallelized over the trees. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
Controls the generation of the random y used to fit the trees and the draw of the splits for each feature at the trees’ nodes. See Glossary for details.
Controls the verbosity when fitting and predicting.
When set to True, reuse the solution of the previous call to fit and add more estimators to the ensemble, otherwise, just fit a whole new forest. See the Glossary.
The child estimator template used to create the collection of fitted sub-estimators.
The collection of fitted sub-estimators.
The impurity-based feature importances.
The number of features when fit is performed.
The number of outputs when fit is performed.
One-hot encoder used to create the sparse embedding.
P. Geurts, D. Ernst., and L. Wehenkel, “Extremely randomized trees”, Machine Learning, 63(1), 3-42, 2006.
Moosmann, F. and Triggs, B. and Jurie, F. “Fast discriminative visual codebooks using randomized clustering forests” NIPS 2007
apply(X)
Apply trees in the forest to X, return leaf indices.
decision_path(X)
Return the decision path in the forest.
fit(X[, y, sample_weight])
Fit estimator.
fit_transform(X[, y, sample_weight])
Fit estimator and transform dataset.
get_params([deep])
Get parameters for this estimator.
set_params(**params)
Set the parameters of this estimator.
transform(X)
Transform dataset.
Apply trees in the forest to X, return leaf indices.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
For each datapoint x in X and for each tree in the forest, return the index of the leaf x ends up in.
Return the decision path in the forest.
New in version 0.18.
The input samples. Internally, its dtype will be converted to dtype=np.float32. If a sparse matrix is provided, it will be converted into a sparse csr_matrix.
Return a node indicator matrix where non zero elements indicates that the samples goes through the nodes. The matrix is of CSR format.
The columns from indicator[n_nodes_ptr[i]:n_nodes_ptr[i+1]] gives the indicator value for the i-th estimator.
The impurity-based feature importances.
The higher, the more important the feature. The importance of a feature is computed as the (normalized) total reduction of the criterion brought by that feature. It is also known as the Gini importance.
Warning: impurity-based feature importances can be misleading for high cardinality features (many unique values). See sklearn.inspection.permutation_importance as an alternative.
The values of this array sum to 1, unless all trees are single node trees consisting of only the root node, in which case it will be an array of zeros.
Fit estimator.
The input samples. Use dtype=np.float32 for maximum efficiency. Sparse matrices are also supported, use sparse csc_matrix for maximum efficiency.
Not used, present for API consistency by convention.
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.
Fit estimator and transform dataset.
Input data used to build forests. Use dtype=np.float32 for maximum efficiency.
Not used, present for API consistency by convention.
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.
Transformed dataset.
Get parameters for this estimator.
If True, will return the parameters for this estimator and contained subobjects that are estimators.
Parameter names mapped to their values.
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
Estimator parameters.
Estimator instance.
Transform dataset.
Input data to be transformed. Use dtype=np.float32 for maximum efficiency. Sparse matrices are also supported, use sparse csr_matrix for maximum efficiency.
Transformed dataset.
Hashing feature transformation using Totally Random Trees
Feature transformations with ensembles of trees
Manifold learning on handwritten digits: Locally Linear Embedding, Isomap…


Fit estimator.
The input samples. Use dtype=np.float32 for maximum efficiency. Sparse matrices are also supported, use sparse csc_matrix for maximum efficiency.
Not used, present for API consistency by convention.
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.


Fit estimator and transform dataset.
Input data used to build forests. Use dtype=np.float32 for maximum efficiency.
Not used, present for API consistency by convention.
Sample weights. If None, then samples are equally weighted. Splits that would create child nodes with net zero or negative weight are ignored while searching for a split in each node. In the case of classification, splits are also ignored if they would result in any single class carrying a negative weight in either child node.
Transformed dataset.


Transform dataset.
Input data to be transformed. Use dtype=np.float32 for maximum efficiency. Sparse matrices are also supported, use sparse csr_matrix for maximum efficiency.
Transformed dataset.


Stack of estimators with a final classifier.
Stacked generalization consists in stacking the output of individual estimator and use a classifier to compute the final prediction. Stacking allows to use the strength of each individual estimator by using their output as input of a final estimator.
Note that estimators_ are fitted on the full X while final_estimator_ is trained using cross-validated predictions of the base estimators using cross_val_predict.
Read more in the User Guide.
New in version 0.22.
Base estimators which will be stacked together. Each element of the list is defined as a tuple of string (i.e. name) and an estimator instance. An estimator can be set to ‘drop’ using set_params.
A classifier which will be used to combine the base estimators. The default classifier is a LogisticRegression.
Determines the cross-validation splitting strategy used in cross_val_predict to train final_estimator. Possible inputs for cv are:
For integer/None inputs, if the estimator is a classifier and y is either binary or multiclass, StratifiedKFold is used. In all other cases, KFold is used.
Refer User Guide for the various cross-validation strategies that can be used here.
Note
A larger number of split will provide no benefits if the number of training samples is large enough. Indeed, the training time will increase. cv is not used for model evaluation but for prediction.
Methods called for each base estimator. It can be:
The number of jobs to run in parallel all estimators fit. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
When False, only the predictions of estimators will be used as training data for final_estimator. When True, the final_estimator is trained on the predictions as well as the original training data.
Verbosity level.
Class labels.
The elements of the estimators parameter, having been fitted on the training data. If an estimator has been set to 'drop', it will not appear in estimators_.
Attribute to access any fitted sub-estimators by name.
The classifier which predicts given the output of estimators_.
The method used by each base estimator.
When predict_proba is used by each estimator (i.e. most of the time for stack_method='auto' or specifically for stack_method='predict_proba'), The first column predicted by each estimator will be dropped in the case of a binary classification problem. Indeed, both feature will be perfectly collinear.
Wolpert, David H. “Stacked generalization.” Neural networks 5.2 (1992): 241-259.
decision_function(X)
Predict decision function for samples in X using final_estimator_.decision_function.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Fit to data, then transform it.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X, **predict_params)
Predict target for X.
predict_proba(X)
Predict class probabilities for X using final_estimator_.predict_proba.
score(X, y[, sample_weight])
Return the mean accuracy on the given test data and labels.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return class labels or probabilities for X for each estimator.
Predict decision function for samples in X using final_estimator_.decision_function.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
The decision function computed the final estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
Fit to data, then transform it.
Fits transformer to X and y with optional parameters fit_params and returns a transformed version of X.
Input samples.
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Number of features seen during fit.
Predict target for X.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Parameters to the predict called by the final_estimator. Note that this may be used to return uncertainties from some estimators with return_std or return_cov. Be aware that it will only accounts for uncertainty in the final estimator.
Predicted targets.
Predict class probabilities for X using final_estimator_.predict_proba.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
The class probabilities of the input samples.
Return the mean accuracy on the given test data and labels.
In multi-label classification, this is the subset accuracy which is a harsh metric since you require for each sample that each label set be correctly predicted.
Test samples.
True labels for X.
Sample weights.
Mean accuracy of self.predict(X) wrt. y.
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return class labels or probabilities for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Prediction outputs for each estimator.


Stack of estimators with a final classifier.
Stacked generalization consists in stacking the output of individual estimator and use a classifier to compute the final prediction. Stacking allows to use the strength of each individual estimator by using their output as input of a final estimator.
Note that estimators_ are fitted on the full X while final_estimator_ is trained using cross-validated predictions of the base estimators using cross_val_predict.
Read more in the User Guide.
New in version 0.22.
Base estimators which will be stacked together. Each element of the list is defined as a tuple of string (i.e. name) and an estimator instance. An estimator can be set to ‘drop’ using set_params.
A classifier which will be used to combine the base estimators. The default classifier is a LogisticRegression.
Determines the cross-validation splitting strategy used in cross_val_predict to train final_estimator. Possible inputs for cv are:
For integer/None inputs, if the estimator is a classifier and y is either binary or multiclass, StratifiedKFold is used. In all other cases, KFold is used.
Refer User Guide for the various cross-validation strategies that can be used here.
Note
A larger number of split will provide no benefits if the number of training samples is large enough. Indeed, the training time will increase. cv is not used for model evaluation but for prediction.
Methods called for each base estimator. It can be:
The number of jobs to run in parallel all estimators fit. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
When False, only the predictions of estimators will be used as training data for final_estimator. When True, the final_estimator is trained on the predictions as well as the original training data.
Verbosity level.
Class labels.
The elements of the estimators parameter, having been fitted on the training data. If an estimator has been set to 'drop', it will not appear in estimators_.
Attribute to access any fitted sub-estimators by name.
The classifier which predicts given the output of estimators_.
The method used by each base estimator.
When predict_proba is used by each estimator (i.e. most of the time for stack_method='auto' or specifically for stack_method='predict_proba'), The first column predicted by each estimator will be dropped in the case of a binary classification problem. Indeed, both feature will be perfectly collinear.
Wolpert, David H. “Stacked generalization.” Neural networks 5.2 (1992): 241-259.
decision_function(X)
Predict decision function for samples in X using final_estimator_.decision_function.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Fit to data, then transform it.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X, **predict_params)
Predict target for X.
predict_proba(X)
Predict class probabilities for X using final_estimator_.predict_proba.
score(X, y[, sample_weight])
Return the mean accuracy on the given test data and labels.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return class labels or probabilities for X for each estimator.
Predict decision function for samples in X using final_estimator_.decision_function.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
The decision function computed the final estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
Fit to data, then transform it.
Fits transformer to X and y with optional parameters fit_params and returns a transformed version of X.
Input samples.
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Number of features seen during fit.
Predict target for X.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Parameters to the predict called by the final_estimator. Note that this may be used to return uncertainties from some estimators with return_std or return_cov. Be aware that it will only accounts for uncertainty in the final estimator.
Predicted targets.
Predict class probabilities for X using final_estimator_.predict_proba.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
The class probabilities of the input samples.
Return the mean accuracy on the given test data and labels.
In multi-label classification, this is the subset accuracy which is a harsh metric since you require for each sample that each label set be correctly predicted.
Test samples.
True labels for X.
Sample weights.
Mean accuracy of self.predict(X) wrt. y.
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return class labels or probabilities for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Prediction outputs for each estimator.
Release Highlights for scikit-learn 0.22


Predict decision function for samples in X using final_estimator_.decision_function.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
The decision function computed the final estimator.


Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.


Fit to data, then transform it.
Fits transformer to X and y with optional parameters fit_params and returns a transformed version of X.
Input samples.
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.


Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.


Predict target for X.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Parameters to the predict called by the final_estimator. Note that this may be used to return uncertainties from some estimators with return_std or return_cov. Be aware that it will only accounts for uncertainty in the final estimator.
Predicted targets.


Predict class probabilities for X using final_estimator_.predict_proba.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
The class probabilities of the input samples.


Return the mean accuracy on the given test data and labels.
In multi-label classification, this is the subset accuracy which is a harsh metric since you require for each sample that each label set be correctly predicted.
Test samples.
True labels for X.
Sample weights.
Mean accuracy of self.predict(X) wrt. y.


Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.


Return class labels or probabilities for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Prediction outputs for each estimator.


Stack of estimators with a final regressor.
Stacked generalization consists in stacking the output of individual estimator and use a regressor to compute the final prediction. Stacking allows to use the strength of each individual estimator by using their output as input of a final estimator.
Note that estimators_ are fitted on the full X while final_estimator_ is trained using cross-validated predictions of the base estimators using cross_val_predict.
Read more in the User Guide.
New in version 0.22.
Base estimators which will be stacked together. Each element of the list is defined as a tuple of string (i.e. name) and an estimator instance. An estimator can be set to ‘drop’ using set_params.
A regressor which will be used to combine the base estimators. The default regressor is a RidgeCV.
Determines the cross-validation splitting strategy used in cross_val_predict to train final_estimator. Possible inputs for cv are:
For integer/None inputs, if the estimator is a classifier and y is either binary or multiclass, StratifiedKFold is used. In all other cases, KFold is used.
Refer User Guide for the various cross-validation strategies that can be used here.
Note
A larger number of split will provide no benefits if the number of training samples is large enough. Indeed, the training time will increase. cv is not used for model evaluation but for prediction.
The number of jobs to run in parallel for fit of all estimators. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
When False, only the predictions of estimators will be used as training data for final_estimator. When True, the final_estimator is trained on the predictions as well as the original training data.
Verbosity level.
The elements of the estimators parameter, having been fitted on the training data. If an estimator has been set to 'drop', it will not appear in estimators_.
Attribute to access any fitted sub-estimators by name.
The regressor to stacked the base estimators fitted.
Wolpert, David H. “Stacked generalization.” Neural networks 5.2 (1992): 241-259.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Fit to data, then transform it.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X, **predict_params)
Predict target for X.
score(X, y[, sample_weight])
Return the coefficient of determination \(R^2\) of the prediction.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return the predictions for X for each estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
Fit to data, then transform it.
Fits transformer to X and y with optional parameters fit_params and returns a transformed version of X.
Input samples.
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Number of features seen during fit.
Predict target for X.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Parameters to the predict called by the final_estimator. Note that this may be used to return uncertainties from some estimators with return_std or return_cov. Be aware that it will only accounts for uncertainty in the final estimator.
Predicted targets.
Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return the predictions for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Prediction outputs for each estimator.


Stack of estimators with a final regressor.
Stacked generalization consists in stacking the output of individual estimator and use a regressor to compute the final prediction. Stacking allows to use the strength of each individual estimator by using their output as input of a final estimator.
Note that estimators_ are fitted on the full X while final_estimator_ is trained using cross-validated predictions of the base estimators using cross_val_predict.
Read more in the User Guide.
New in version 0.22.
Base estimators which will be stacked together. Each element of the list is defined as a tuple of string (i.e. name) and an estimator instance. An estimator can be set to ‘drop’ using set_params.
A regressor which will be used to combine the base estimators. The default regressor is a RidgeCV.
Determines the cross-validation splitting strategy used in cross_val_predict to train final_estimator. Possible inputs for cv are:
For integer/None inputs, if the estimator is a classifier and y is either binary or multiclass, StratifiedKFold is used. In all other cases, KFold is used.
Refer User Guide for the various cross-validation strategies that can be used here.
Note
A larger number of split will provide no benefits if the number of training samples is large enough. Indeed, the training time will increase. cv is not used for model evaluation but for prediction.
The number of jobs to run in parallel for fit of all estimators. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
When False, only the predictions of estimators will be used as training data for final_estimator. When True, the final_estimator is trained on the predictions as well as the original training data.
Verbosity level.
The elements of the estimators parameter, having been fitted on the training data. If an estimator has been set to 'drop', it will not appear in estimators_.
Attribute to access any fitted sub-estimators by name.
The regressor to stacked the base estimators fitted.
Wolpert, David H. “Stacked generalization.” Neural networks 5.2 (1992): 241-259.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Fit to data, then transform it.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X, **predict_params)
Predict target for X.
score(X, y[, sample_weight])
Return the coefficient of determination \(R^2\) of the prediction.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return the predictions for X for each estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
Fit to data, then transform it.
Fits transformer to X and y with optional parameters fit_params and returns a transformed version of X.
Input samples.
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Number of features seen during fit.
Predict target for X.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Parameters to the predict called by the final_estimator. Note that this may be used to return uncertainties from some estimators with return_std or return_cov. Be aware that it will only accounts for uncertainty in the final estimator.
Predicted targets.
Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return the predictions for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Prediction outputs for each estimator.
Combine predictors using stacking


Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).


Return the predictions for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Prediction outputs for each estimator.


Soft Voting/Majority Rule classifier for unfitted estimators.
Read more in the User Guide.
New in version 0.17.
Invoking the fit method on the VotingClassifier will fit clones of those original estimators that will be stored in the class attribute self.estimators_. An estimator can be set to 'drop' using set_params.
Changed in version 0.21: 'drop' is accepted. Using None was deprecated in 0.22 and support was removed in 0.24.
If ‘hard’, uses predicted class labels for majority rule voting. Else if ‘soft’, predicts the class label based on the argmax of the sums of the predicted probabilities, which is recommended for an ensemble of well-calibrated classifiers.
Sequence of weights (float or int) to weight the occurrences of predicted class labels (hard voting) or class probabilities before averaging (soft voting). Uses uniform weights if None.
The number of jobs to run in parallel for fit. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
New in version 0.18.
Affects shape of transform output only when voting=’soft’ If voting=’soft’ and flatten_transform=True, transform method returns matrix with shape (n_samples, n_classifiers * n_classes). If flatten_transform=False, it returns (n_classifiers, n_samples, n_classes).
If True, the time elapsed while fitting will be printed as it is completed.
New in version 0.23.
The collection of fitted sub-estimators as defined in estimators that are not ‘drop’.
Attribute to access any fitted sub-estimators by name.
New in version 0.20.
The classes labels.
See also
Prediction voting regressor.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Return class labels or probabilities for each estimator.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X)
Predict class labels for X.
score(X, y[, sample_weight])
Return the mean accuracy on the given test data and labels.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return class labels or probabilities for X for each estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
New in version 0.18.
Return class labels or probabilities for each estimator.
Return predictions for X for each estimator.
Input samples
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Predict class labels for X.
The input samples.
Predicted class labels.
Compute probabilities of possible outcomes for samples in X.
The input samples.
Weighted average probability for each class per sample.
Return the mean accuracy on the given test data and labels.
In multi-label classification, this is the subset accuracy which is a harsh metric since you require for each sample that each label set be correctly predicted.
Test samples.
True labels for X.
Sample weights.
Mean accuracy of self.predict(X) wrt. y.
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return class labels or probabilities for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
returns ndarray of shape (n_classifiers, n_samples * n_classes), being class probabilities calculated by each classifier.
ndarray of shape (n_classifiers, n_samples, n_classes)
ndarray of shape (n_samples, n_classifiers), being class labels predicted by each classifier.


Soft Voting/Majority Rule classifier for unfitted estimators.
Read more in the User Guide.
New in version 0.17.
Invoking the fit method on the VotingClassifier will fit clones of those original estimators that will be stored in the class attribute self.estimators_. An estimator can be set to 'drop' using set_params.
Changed in version 0.21: 'drop' is accepted. Using None was deprecated in 0.22 and support was removed in 0.24.
If ‘hard’, uses predicted class labels for majority rule voting. Else if ‘soft’, predicts the class label based on the argmax of the sums of the predicted probabilities, which is recommended for an ensemble of well-calibrated classifiers.
Sequence of weights (float or int) to weight the occurrences of predicted class labels (hard voting) or class probabilities before averaging (soft voting). Uses uniform weights if None.
The number of jobs to run in parallel for fit. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
New in version 0.18.
Affects shape of transform output only when voting=’soft’ If voting=’soft’ and flatten_transform=True, transform method returns matrix with shape (n_samples, n_classifiers * n_classes). If flatten_transform=False, it returns (n_classifiers, n_samples, n_classes).
If True, the time elapsed while fitting will be printed as it is completed.
New in version 0.23.
The collection of fitted sub-estimators as defined in estimators that are not ‘drop’.
Attribute to access any fitted sub-estimators by name.
New in version 0.20.
The classes labels.
See also
Prediction voting regressor.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Return class labels or probabilities for each estimator.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X)
Predict class labels for X.
score(X, y[, sample_weight])
Return the mean accuracy on the given test data and labels.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return class labels or probabilities for X for each estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
New in version 0.18.
Return class labels or probabilities for each estimator.
Return predictions for X for each estimator.
Input samples
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Predict class labels for X.
The input samples.
Predicted class labels.
Compute probabilities of possible outcomes for samples in X.
The input samples.
Weighted average probability for each class per sample.
Return the mean accuracy on the given test data and labels.
In multi-label classification, this is the subset accuracy which is a harsh metric since you require for each sample that each label set be correctly predicted.
Test samples.
True labels for X.
Sample weights.
Mean accuracy of self.predict(X) wrt. y.
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return class labels or probabilities for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
returns ndarray of shape (n_classifiers, n_samples * n_classes), being class probabilities calculated by each classifier.
ndarray of shape (n_classifiers, n_samples, n_classes)
ndarray of shape (n_samples, n_classifiers), being class labels predicted by each classifier.
Plot the decision boundaries of a VotingClassifier
Plot class probabilities calculated by the VotingClassifier


Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
New in version 0.18.


Return class labels or probabilities for each estimator.
Return predictions for X for each estimator.
Input samples
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.


Predict class labels for X.
The input samples.
Predicted class labels.


Compute probabilities of possible outcomes for samples in X.
The input samples.
Weighted average probability for each class per sample.


Return class labels or probabilities for X for each estimator.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
returns ndarray of shape (n_classifiers, n_samples * n_classes), being class probabilities calculated by each classifier.
ndarray of shape (n_classifiers, n_samples, n_classes)
ndarray of shape (n_samples, n_classifiers), being class labels predicted by each classifier.


Prediction voting regressor for unfitted estimators.
A voting regressor is an ensemble meta-estimator that fits several base regressors, each on the whole dataset. Then it averages the individual predictions to form a final prediction.
Read more in the User Guide.
New in version 0.21.
Invoking the fit method on the VotingRegressor will fit clones of those original estimators that will be stored in the class attribute self.estimators_. An estimator can be set to 'drop' using set_params.
Changed in version 0.21: 'drop' is accepted. Using None was deprecated in 0.22 and support was removed in 0.24.
Sequence of weights (float or int) to weight the occurrences of predicted values before averaging. Uses uniform weights if None.
The number of jobs to run in parallel for fit. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
If True, the time elapsed while fitting will be printed as it is completed.
New in version 0.23.
The collection of fitted sub-estimators as defined in estimators that are not ‘drop’.
Attribute to access any fitted sub-estimators by name.
New in version 0.20.
See also
Soft Voting/Majority Rule classifier.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Return class labels or probabilities for each estimator.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X)
Predict regression target for X.
score(X, y[, sample_weight])
Return the coefficient of determination \(R^2\) of the prediction.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return predictions for X for each estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
Fitted estimator.
Return class labels or probabilities for each estimator.
Return predictions for X for each estimator.
Input samples
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Predict regression target for X.
The predicted regression target of an input sample is computed as the mean predicted regression targets of the estimators in the ensemble.
The input samples.
The predicted values.
Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return predictions for X for each estimator.
The input samples.
Values predicted by each regressor.


Prediction voting regressor for unfitted estimators.
A voting regressor is an ensemble meta-estimator that fits several base regressors, each on the whole dataset. Then it averages the individual predictions to form a final prediction.
Read more in the User Guide.
New in version 0.21.
Invoking the fit method on the VotingRegressor will fit clones of those original estimators that will be stored in the class attribute self.estimators_. An estimator can be set to 'drop' using set_params.
Changed in version 0.21: 'drop' is accepted. Using None was deprecated in 0.22 and support was removed in 0.24.
Sequence of weights (float or int) to weight the occurrences of predicted values before averaging. Uses uniform weights if None.
The number of jobs to run in parallel for fit. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.
If True, the time elapsed while fitting will be printed as it is completed.
New in version 0.23.
The collection of fitted sub-estimators as defined in estimators that are not ‘drop’.
Attribute to access any fitted sub-estimators by name.
New in version 0.20.
See also
Soft Voting/Majority Rule classifier.
fit(X, y[, sample_weight])
Fit the estimators.
fit_transform(X[, y])
Return class labels or probabilities for each estimator.
get_params([deep])
Get the parameters of an estimator from the ensemble.
predict(X)
Predict regression target for X.
score(X, y[, sample_weight])
Return the coefficient of determination \(R^2\) of the prediction.
set_params(**params)
Set the parameters of an estimator from the ensemble.
transform(X)
Return predictions for X for each estimator.
Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
Fitted estimator.
Return class labels or probabilities for each estimator.
Return predictions for X for each estimator.
Input samples
Target values (None for unsupervised transformations).
Additional fit parameters.
Transformed array.
Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.
Predict regression target for X.
The predicted regression target of an input sample is computed as the mean predicted regression targets of the estimators in the ensemble.
The input samples.
The predicted values.
Return the coefficient of determination \(R^2\) of the prediction.
The coefficient \(R^2\) is defined as \((1 - \frac{u}{v})\), where \(u\) is the residual sum of squares ((y_true - y_pred)
** 2).sum() and \(v\) is the total sum of squares ((y_true -
y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a \(R^2\) score of 0.0.
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape (n_samples, n_samples_fitted), where n_samples_fitted is the number of samples used in the fitting for the estimator.
True values for X.
Sample weights.
\(R^2\) of self.predict(X) wrt. y.
The \(R^2\) score used when calling score on a regressor uses multioutput='uniform_average' from version 0.23 to keep consistent with default value of r2_score. This influences the score method of all the multioutput regressors (except for MultiOutputRegressor).
Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.
Return predictions for X for each estimator.
The input samples.
Values predicted by each regressor.
Plot individual and voting regression predictions


Fit the estimators.
Training vectors, where n_samples is the number of samples and n_features is the number of features.
Target values.
Sample weights. If None, then samples are equally weighted. Note that this is supported only if all underlying estimators support sample weights.
Fitted estimator.


Get the parameters of an estimator from the ensemble.
Returns the parameters given in the constructor as well as the estimators contained within the estimators parameter.
Setting it to True gets the various estimators and the parameters of the estimators as well.


Predict regression target for X.
The predicted regression target of an input sample is computed as the mean predicted regression targets of the estimators in the ensemble.
The input samples.
The predicted values.


Set the parameters of an estimator from the ensemble.
Valid parameter keys can be listed with get_params(). Note that you can directly set the parameters of the estimators contained in estimators.
Specific parameters using e.g. set_params(parameter_name=new_value). In addition, to setting the parameters of the estimator, the individual estimator of the estimators can also be set, or can be removed by setting them to ‘drop’.


Return predictions for X for each estimator.
The input samples.
Values predicted by each regressor.


Custom warning to capture convergence problems
Changed in version 0.18: Moved from sklearn.utils.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Custom warning to capture convergence problems
Changed in version 0.18: Moved from sklearn.utils.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Multiclass sparse logistic regression on 20newgroups
Early stopping of Stochastic Gradient Descent
Visualization of MLP weights on MNIST
Compare Stochastic learning strategies for MLPClassifier
Feature discretization


Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Warning used to notify implicit data conversions happening in the code.
This warning occurs when some input data needs to be converted or interpreted in a way that may not match the user’s expectations.
Changed in version 0.18: Moved from sklearn.utils.validation.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Custom warning to notify potential issues with data dimensionality.
For example, in random projection, this warning is raised when the number of components, which quantifies the dimensionality of the target projection space, is higher than the number of features, which quantifies the dimensionality of the original source space, to imply that the dimensionality of the problem will not be reduced.
Changed in version 0.18: Moved from sklearn.utils.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Warning used to notify the user of inefficient computation.
This warning notifies the user that the efficiency may not be optimal due to some reason which may be included as a part of the warning message. This may be subclassed into a more specific Warning class.
New in version 0.18.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Warning class used if there is an error while fitting the estimator.
This Warning is used in meta estimators GridSearchCV and RandomizedSearchCV and the cross-validation helper function cross_val_score to warn when there is an error while fitting the estimator.
Changed in version 0.18: Moved from sklearn.cross_validation.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Exception class to raise if estimator is used before fitting.
This class inherits from both ValueError and AttributeError to help with exception handling and backward compatibility.
Changed in version 0.18: Moved from sklearn.utils.validation.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Warning used when the metric is invalid
Changed in version 0.18: Moved from sklearn.base.
with_traceback
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.


Transforms lists of feature-value mappings to vectors.
This transformer turns lists of mappings (dict-like objects) of feature names to feature values into Numpy arrays or scipy.sparse matrices for use with scikit-learn estimators.
When feature values are strings, this transformer will do a binary one-hot (aka one-of-K) coding: one boolean-valued feature is constructed for each of the possible string values that the feature can take on. For instance, a feature “f” that can take on the values “ham” and “spam” will become two features in the output, one signifying “f=ham”, the other “f=spam”.
If a feature value is a sequence or set of strings, this transformer will iterate over the values and will count the occurrences of each string value.
However, note that this transformer will only do a binary one-hot encoding when feature values are of type string. If categorical features are represented as numeric values such as int or iterables of strings, the DictVectorizer can be followed by OneHotEncoder to complete binary one-hot encoding.
Features that do not occur in a sample (mapping) will have a zero value in the resulting array/matrix.
Read more in the User Guide.
The type of feature values. Passed to Numpy array/scipy.sparse matrix constructors as the dtype argument.
Separator string used when constructing new features for one-hot coding.
Whether transform should produce scipy.sparse matrices.
Whether feature_names_ and vocabulary_ should be sorted when fitting.
A dictionary mapping feature names to feature indices.
A list of length n_features containing the feature names (e.g., “f=ham” and “f=spam”).
See also
Performs vectorization using only a hash function.
Handles nominal/categorical features encoded as columns of arbitrary data types.
fit(X[, y])
Learn a list of feature name -> indices mappings.
fit_transform(X[, y])
Learn a list of feature name -> indices mappings and transform X.
get_feature_names()
Returns a list of feature names, ordered by their indices.
get_params([deep])
Get parameters for this estimator.
inverse_transform(X[, dict_type])
Transform array or sparse matrix X back to feature mappings.
restrict(support[, indices])
Restrict the features to those in support using feature selection.
set_params(**params)
Set the parameters of this estimator.
transform(X)
Transform feature->value dicts to array or sparse matrix.
Learn a list of feature name -> indices mappings.
Dict(s) or Mapping(s) from feature names (arbitrary Python objects) to feature values (strings or convertible to dtype).
Changed in version 0.24: Accepts multiple string values for one categorical feature.
Learn a list of feature name -> indices mappings and transform X.
Like fit(X) followed by transform(X), but does not require materializing X in memory.
Dict(s) or Mapping(s) from feature names (arbitrary Python objects) to feature values (strings or convertible to dtype).
Changed in version 0.24: Accepts multiple string values for one categorical feature.
Feature vectors; always 2-d.
Returns a list of feature names, ordered by their indices.
If one-of-K coding is applied to categorical features, this will include the constructed feature names but not the original ones.
Get parameters for this estimator.
If True, will return the parameters for this estimator and contained subobjects that are estimators.
Parameter names mapped to their values.
Transform array or sparse matrix X back to feature mappings.
X must have been produced by this DictVectorizer’s transform or fit_transform method; it may only have passed through transformers that preserve the number of features and their order.
In the case of one-hot/one-of-K coding, the constructed feature names and values are returned rather than the original ones.
Sample matrix.
Constructor for feature mappings. Must conform to the collections.Mapping API.
Feature mappings for the samples in X.
Restrict the features to those in support using feature selection.
This function modifies the estimator in-place.
Boolean mask or list of indices (as returned by the get_support member of feature selectors).
Whether support is a list of indices.
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
Estimator parameters.
Estimator instance.
Transform feature->value dicts to array or sparse matrix.
Named features not encountered during fit or fit_transform will be silently ignored.
Dict(s) or Mapping(s) from feature names (arbitrary Python objects) to feature values (strings or convertible to dtype).
Feature vectors; always 2-d.


Transforms lists of feature-value mappings to vectors.
This transformer turns lists of mappings (dict-like objects) of feature names to feature values into Numpy arrays or scipy.sparse matrices for use with scikit-learn estimators.
When feature values are strings, this transformer will do a binary one-hot (aka one-of-K) coding: one boolean-valued feature is constructed for each of the possible string values that the feature can take on. For instance, a feature “f” that can take on the values “ham” and “spam” will become two features in the output, one signifying “f=ham”, the other “f=spam”.
If a feature value is a sequence or set of strings, this transformer will iterate over the values and will count the occurrences of each string value.
However, note that this transformer will only do a binary one-hot encoding when feature values are of type string. If categorical features are represented as numeric values such as int or iterables of strings, the DictVectorizer can be followed by OneHotEncoder to complete binary one-hot encoding.
Features that do not occur in a sample (mapping) will have a zero value in the resulting array/matrix.
Read more in the User Guide.
The type of feature values. Passed to Numpy array/scipy.sparse matrix constructors as the dtype argument.
Separator string used when constructing new features for one-hot coding.
Whether transform should produce scipy.sparse matrices.
Whether feature_names_ and vocabulary_ should be sorted when fitting.
A dictionary mapping feature names to feature indices.
A list of length n_features containing the feature names (e.g., “f=ham” and “f=spam”).
See also
Performs vectorization using only a hash function.
Handles nominal/categorical features encoded as columns of arbitrary data types.
fit(X[, y])
Learn a list of feature name -> indices mappings.
fit_transform(X[, y])
Learn a list of feature name -> indices mappings and transform X.
get_feature_names()
Returns a list of feature names, ordered by their indices.
get_params([deep])
Get parameters for this estimator.
inverse_transform(X[, dict_type])
Transform array or sparse matrix X back to feature mappings.
restrict(support[, indices])
Restrict the features to those in support using feature selection.
set_params(**params)
Set the parameters of this estimator.
transform(X)
Transform feature->value dicts to array or sparse matrix.
Learn a list of feature name -> indices mappings.
Dict(s) or Mapping(s) from feature names (arbitrary Python objects) to feature values (strings or convertible to dtype).
Changed in version 0.24: Accepts multiple string values for one categorical feature.
Learn a list of feature name -> indices mappings and transform X.
Like fit(X) followed by transform(X), but does not require materializing X in memory.
Dict(s) or Mapping(s) from feature names (arbitrary Python objects) to feature values (strings or convertible to dtype).
Changed in version 0.24: Accepts multiple string values for one categorical feature.
Feature vectors; always 2-d.
Returns a list of feature names, ordered by their indices.
If one-of-K coding is applied to categorical features, this will include the constructed feature names but not the original ones.
Get parameters for this estimator.
If True, will return the parameters for this estimator and contained subobjects that are estimators.
Parameter names mapped to their values.
Transform array or sparse matrix X back to feature mappings.
X must have been produced by this DictVectorizer’s transform or fit_transform method; it may only have passed through transformers that preserve the number of features and their order.
In the case of one-hot/one-of-K coding, the constructed feature names and values are returned rather than the original ones.
Sample matrix.
Constructor for feature mappings. Must conform to the collections.Mapping API.
Feature mappings for the samples in X.
Restrict the features to those in support using feature selection.
This function modifies the estimator in-place.
Boolean mask or list of indices (as returned by the get_support member of feature selectors).
Whether support is a list of indices.
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
Estimator parameters.
Estimator instance.
Transform feature->value dicts to array or sparse matrix.
Named features not encountered during fit or fit_transform will be silently ignored.
Dict(s) or Mapping(s) from feature names (arbitrary Python objects) to feature values (strings or convertible to dtype).
Feature vectors; always 2-d.
Column Transformer with Heterogeneous Data Sources
FeatureHasher and DictVectorizer Comparison


Learn a list of feature name -> indices mappings.
Dict(s) or Mapping(s) from feature names (arbitrary Python objects) to feature values (strings or convertible to dtype).
Changed in version 0.24: Accepts multiple string values for one categorical feature.