通过DecisionTreeClassifier sklearn分类数据?

时间:2017-06-20 06:00:44

标签: python scikit-learn decision-tree entropy binning

假设我有一个数据集:

clf = tree.DecisionTreeClassifier(criterion = 'entropy',max_depth = 4)
clf.fit(X.values.reshape(-1,1),y.values)

threshold = clf.tree_.threshold[clf.tree_.threshold>-2]
threshold = np.sort(threshold)

我尝试通过最小化熵将X离散到几个箱子中。所以我做了以下事情:

npm install bcryptjs

'阈值'应该给出分裂点,这是一种分类数据的正确方法吗?

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

首先,您所做的是正确的。

有很多方法可以对数据进行装箱:

  1. 基于列的值(例如:将列在列值的最小值和最大值之间划分为10个相等的组)。
  2. 基于列值的分布,例如,基于列的十进制可以是10组(最好使用pandas.qcut进行设置)
  3. 基于目标,就像您一样。我发现此博客与您相关,并且我认为您找到最佳拆分的方法很好https://towardsdatascience.com/discretisation-using-decision-trees-21910483fa4b