如何手动选择决策树的功能

时间:2019-10-04 09:01:54

标签: python machine-learning decision-tree feature-selection

我需要能够更改用于构建决策树的功能(具有机器学习的含义)。以Iris数据集为例,我希望能够选择Sepallength作为根节点中使用的功能,并选择Petallength作为第一级节点中使用的功能,等等。

我想清楚一点,我的目的不是更改最小样本分割和决策树的随机状态。而是选择特征-被分类元素的特征-并将它们放在决策树的某些节点中。

然后,代码应该能够找到最佳阈值(每个节点的范围)以生成最佳分割。

这里有一些有关生成树的通用代码。

from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import load_iris

clf = DecisionTreeClassifier(random_state=0)

iris = load_iris()

clf.fit(iris.data,iris.target)

你们有没有做过?

1 个答案:

答案 0 :(得分:0)

  

你们有没有做过?

不,您可能是第一个!

哈哈,但您可以通过多种方式选择它,也可以在官方文档中找到它:https://scikit-learn.org/stable/auto_examples/datasets/plot_iris_dataset.html

# import some data to play with
iris = datasets.load_iris()
X = iris.data[:, :2]  # we only take the first two features.
y = iris.target

然后您正在执行的操作:clf.fit(X, y)

此处介绍了其他方法:Selecting multiple columns in a pandas dataframe