将 PCA 作为 nearZeroVar() 的替代方案
移除低方差自变量的一个替代方法,是在数据集上运行 PCA。有时这样做更好,因为它不会直接丢弃您的全部数据:许多不同的低方差自变量可能会被合成为一个高方差的 PCA 变量,从而对模型的准确率产生正面影响。
这对线性模型尤其有效:在 preProcess 参数中使用 pca 选项,会对数据进行居中和标准化、合并低方差变量,并确保所有自变量两两正交。这样就为线性回归建模创建了理想的数据集,并且常常能提升模型的准确率。
本练习是课程的一部分
在 R 中使用 caret 的机器学习
练习说明
bloodbrain_x 和 bloodbrain_y 已加载到您的工作区。
- 使用
"pca"作为preProcess选项,在完整的 blood-brain 数据集上拟合一个glm模型。 - 将模型打印到控制台并检查结果。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Fit glm model using PCA: model
model <- train(
x = ___,
y = ___,
method = ___,
preProcess = ___
)
# Print model to console