【问题标题】:How to run Beta Regression with lots of independent variables?如何运行具有大量自变量的 Beta 回归?
【发布时间】:2021-09-06 16:27:44
【问题描述】:

为什么绑定在 0 和 1 之间的 Beta Regression 无法将大量自变量作为 Regressors 处理?我有大约 30 个要拟合的自变量,它显示如下错误:

优化错误(par = start,fn = loglikfun,gr = gradfun,method = method, : 由 optim 提供的非有限值

它只接受几个变量。现在如果我在X <- (df$x1 + … + df$x30) 中组合所有这些自变量并在Y <- df$y 中创建因变量,然后运行 ​​Beta 回归,那么它可以工作,但我不会获得单个自变量的系数我想要的。

betareg(Y ~ X, data = df)

那么,解决办法是什么?

【问题讨论】:

  • 如果您包含一个简单的reproducible example 以及可用于测试和验证可能的解决方案的示例输入,则更容易为您提供帮助。与变量数量相比,您有多少观察值。对于更一般的模型讨论,最好在Cross Validated 询问。 Stack Overflow 是针对特定的编程问题,如果我们不能自己运行代码,就很难提供帮助。

标签: r


【解决方案1】:

可能由于多重共线性问题,模型没有收敛。在大多数情况下,当考虑到大量变量时,回归模型无法正确估计。您可以通过使用信息标准的适当变量选择程序来克服这个问题。

您可以受益于 R 中的 gamlss 包。此外,在建模过程中考虑 gamlss(...,family=BE) 函数时,stepGAIC() 函数可以帮助您。

【讨论】:

    猜你喜欢
    • 2021-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-07
    • 2019-10-12
    • 1970-01-01
    • 2020-05-20
    • 1970-01-01
    相关资源
    最近更新 更多