使用真实数据在Python和R中展示GPBoost的演示

在本系列的第一部分和第二部分中,我们展示了如何在机器学习模型中使用随机效应来建模高基数分类变量,并且我们介绍了实现了将树提升与随机效应相结合的GPBoost算法的GPBoost
库。在本文中,我们演示了如何使用GPBoost
库的Python和R包来处理纵向数据(也称为重复测量数据或面板数据)。您可能希望先阅读本系列的第二部分,因为它对GPBoost
库进行了首次介绍。本演示使用GPBoost
版本1.2.1。
目录
∘ 1 数据:描述、加载和样本拆分∘ 2 GPBoost中纵向数据的建模选项 · · 2.1 主题分组的随机效应 · · 2.2 仅固定效应 · · 2.3 主题和时间分组的随机效应 · · 2.4 具有时序随机斜率的主题随机效应 · · 2.5 特定主题的AR(1) / 高斯过程模型 · · 2.6 主题分组的随机效应和联合AR(1)模型∘ 3 训练GPBoost模型∘ 4 选择调参参数∘ 5 预测∘ 6 结论和参考文献
1 数据:描述、加载和样本拆分
本演示中使用的数据是在第二部分中已经使用过的工资数据。可以从这里下载数据。数据集总共包含28,013个样本,涵盖了4,711个人在多年间测量的数据。这种数据称为纵向数据或面板数据,因为对于每个主题(人员ID = idcode
),数据在时间上重复收集(年份 = t
)。换句话说,对于每个分类变量idcode
的水平,样本是随时间重复的测量。响应变量是对数实际工资(ln_wage
),数据包括年龄、总工作时间等多个预测变量…