Logistic回归模型& R中分类变量的多重性

时间:2014-05-04 18:03:52

标签: r correlation glm logistic-regression

我有一个包含3233行和62列的训练数据集。自变量是Happy(train $ Happy),这是一个二进制变量。其他61列是分类自变量。

我创建了一个逻辑回归模型如下:

logModel <- glm(Happy ~ ., data = train, family = binary)

但是,我想减少进入模型的自变量的数量,可能减少到20左右。我想首先摆脱共线分类变量。

有人可以了解如何确定哪些分类变量是共线的,以及从模型中删除变量时应该使用的阈值?

谢谢!

2 个答案:

答案 0 :(得分:0)

如果你的变量是分类的那么显而易见的解决方案将是R中的惩罚逻辑回归(Lasso),它在glmnet中实现。

对于分类变量,问题要困难得多。

我处于类似的情况,我使用了随机森林包中的重要图,以减少变量的数量。 这不会帮助您找到共线性,而只是按重要性对变量进行排名。

你只有60个变量,也许你对该领域有所了解,所以你可以尝试添加一些对你有意义的变量(比如z = x1-x3,如果你认为值x1-x3是重要的。)然后根据随机森林模型对它们进行排名

答案 1 :(得分:0)

您可以使用Cramer的V或相关的Phi或意外系数(参见http://www.harding.edu/sbreezeel/460%20files/statbook/chapter15.pdf的一篇好文章)来衡量分类变量之间的共线性。如果两个或更多分类变量的Cramer V值接近1,则意味着它们具有高度相关性和#34;并且您可能不需要将所有这些都保留在逻辑回归模型中。