【发布时间】:2021-01-08 22:05:34
【问题描述】:
我有一个糖尿病患者数据集,该数据集已用于在中风、截肢等多种结果中训练 xgboost 模型。最初我们按原样使用连续数值变量,但我们发现结果不明确,因为例如年龄给我们的结果表明,年龄越大中风的风险越高。
但是,对于我们作为医生来说,我们需要一个更窄的范围,因此我们将这些变量划分为 bin。事实上,这给了我们更多的洞察力。尽管如此,我们发现我们的结果中出现了一些连续的区间非常接近。
继续上面的示例,bin(64-78) 和 bin(79-88) 依次出现,并且年龄变量中没有其他 bin 出现。所以我们认为,在这种情况下,最好的方法是找到年龄开始成为中风危险因素的最佳切点。
然后我看到了这个文档 (https://www.mayo.edu/research/documents/biostat-79pdf/doc-10027230),它在 SAS 中解释了如何找到这些切点。我没有足够的经验来自己编程,所以我想知道如何在 python 中找到这些切点?
请限制使用该语言,我已经看过 R、SAS,甚至 SPSS 示例,但在 python 中没有。在 Python 中必须有某种方法可以做到这一点。
【问题讨论】:
-
有趣的问题,但更适合 stats.stackexchange.com。
-
决策树为每个变量提供“最佳”二元切割。您可以使用决策树来识别一些箱。
标签: python machine-learning statistics xgboost