虚拟变量和预处理

Dummy variables and preProcess

我有一个包含一些虚拟变量的数据框,我想将其用作 glmnet 的训练集。

因为我正在使用 glmnet,所以我想使用插入符号 train 函数中的 preProcess 选项来居中和缩放特征。我不希望此转换也应用于虚拟变量。

有没有办法阻止这些变量的转换?

除了编写 custom model 之外(目前)没有其他方法可以做到这一点(请参阅末尾带有 PLS 和 RF 的示例)。

我正在研究一种方法来指定哪些变量获得哪种预处理方法。但是,对于虚拟变量,这很困难,因为您可能需要指定许多列不在当前数据集中的预测变量的名称。这个想法是能够使用通配符(例如 Species* 来捕获 SpeciesversicolorSpeciesvirginica)但是代码还没有完全实现。

最大