学习R中的序数回归?


10

我正在做一个项目,需要资源来使我快速入门。

数据集是关于30个左右变量的大约35000个观测值。大约一半的变量是类别变量,有些变量具有许多可能的值,即,如果将类别变量拆分为虚拟变量,则将有30多个变量。但是最大数量仍然可能达到几百个。(n> p)。

我们要预测的响应是5级(1,2,3,4,5)的序数。预测变量是连续的和分类的,每个变量的大约一半。到目前为止,这些是我的想法/计划:1.将响应视为连续并运行香草线性回归。2.运行名义和有序逻辑和概率回归3.使用MARS和/或另一种非线性回归

我熟悉线性回归。Hastie和Tibshirani对火星有足够的描述。但是当涉及到序数logit / probit时,我却茫然无措,尤其是在变量如此多且数据集很大的情况下。

到目前为止,r包glmnetcr似乎是我最好的选择,但是文档不足以让我知道我要去的地方。

我在哪里可以了解更多?


我建议您也添加R标签。
Christopher Louden 2014年

1
鉴于这是有关统计模型的问题,您可能需要访问CrossValidated网站,但请记住,交叉发布问题是一种糟糕的做法:您要么想制定它以突出显示您所使用的方法问题,要么正面临或迁移整个问题。
StasK 2014年

在没有真正解释原因的情况下,ISL指出(第137页),判别分析(如LDA,QDA)比对数回归的多类扩展更常用。因此,诸如penalizedLDA之类的软件包可能值得研究。
MattBagg 2014年

Answers:



6

在CRAN上,VGAM是一种具有强大功能的R包,用于按顺序分类响应进行回归。该小插图包含一些序数回归的示例,但不可否认,我从未在如此大的数据集上进行过尝试,因此我无法估计可能需要多长时间。您可以在作者页面上找到有关VGAM的其他材料。另外,您可以看看Laura Thompson 与Agresti的书《分类数据分析》的同伴。汤普森书的第7章介绍了累积logit模型,该模型经常与顺序响应一起使用。

希望这可以帮助!


3

如果您完全不熟悉序数回归,我会尝试阅读Tabachnick / Fidell(该主题 http://www.pearsonhighered.com/educator/product/Using-Multivariate-Statistics-6E/0205849571.page)一章。 -虽然不是为R写的,但本书非常善于传达一般逻辑以及“做”和“不做”。

问题是:您的响应类别是什么?如果它们是某种程度的规模,例如“好-坏”,则可以使用线性回归(市场研究一直在进行...),但是如果项目比较分离,则序数回归可能会更好。我模糊地记得一些有关结构方程建模的书提到线性回归在良好尺度上比概率论优越-有点抱歉,我暂时不记得这本书!

最严重的问题可能是虚拟变量的数量-数百个虚拟变量会使分析缓慢,难以解释并且可能不稳定-每个虚拟/虚拟组合是否有足够的情况?


3

从社会科学角度编写的一种标准参考书是J Scott Long的“有限因变量”书。它比Tabachnik在另一个答案中建议的要深得多:Tabachnik充其量是一本食谱,几乎没有对“为什么”的解释,而且看来您将从Long的书中找到的更多细节中受益。书。在大多数计量经济学入门课程中应涵盖序数回归(Wooldridge的横截面和面板数据)是一本伟大的研究生水平的书),以及定量社会科学课程(社会学,心理学),朗的书。

假设您的变量数量比样本量少很多,那么您应该寻找的R包可能ordinal不是glmnetcr另一个答案提到您可以在更主流的MASS软件包中找到此功能。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.