基于决策树的幸福水平预测:原理、实现与优化
1. 决策树基础:寻找最优分割点
在机器学习的决策树构建中,确定最优分割点是关键的一步。对于每个变量,我们可以通过特定的方法找到其最优分割点,使得基于该分割点的预测误差最小。
1.1 寻找单个变量的最优分割点
对于一个变量,我们可以通过遍历所有可能的分割点,计算每个分割点对应的预测误差。具体步骤如下:
1. 遍历所有可能的分割候选点。
2. 对于每个分割候选点,将数据分为两部分:值大于分割候选点的数据和值小于等于分割候选点的数据。
3. 计算使用该分割候选点所产生的误差。
4. 如果该分割候选点的误差小于之前的所有分割候选点的误差,则将其定义为最优分割点。
以下是一个示例代码,用于寻找变量 hhmmb (记录受访者的家庭成员数量)的最优分割点:
allvalues = list(ess.loc[:,'hhmmb'])
predictedvalues = list(ess.loc[:,'happy'])
print(get_splitpoint(allvalues,predictedvalues))
输出结果为:
(1.0, 60860.029867951016, 6.839403436723225, 7.620055170794695)
这意味着 hhmmb 变量的最优分割点为 1.0,我们可以将调查受访者分为独居(1 个家庭
超级会员免费看
订阅专栏 解锁全文
2824

被折叠的 条评论
为什么被折叠?



