首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >chol.default(K)中的误差:5阶前导小调与betareg不成正定

chol.default(K)中的误差:5阶前导小调与betareg不成正定
EN

Stack Overflow用户
提问于 2017-10-13 06:56:07
回答 1查看 5.2K关注 0票数 5

我试图使用beta regression模型( betareg function of betareg package )来拟合这些数据:

代码语言:javascript
复制
df <- data.frame(category=c("c1","c1","c1","c1","c1","c1","c2","c2","c2","c2","c2","c2","c3","c3","c3","c3","c3","c3","c4","c4","c4","c4","c4","c4","c5","c5","c5","c5","c5","c5"),
                 value=c(6.6e-18,0.0061,0.015,1.1e-17,4.7e-17,0.0032,0.29,0.77,0.64,0.59,0.39,0.72,0.097,0.074,0.073,0.08,0.06,0.11,0.034,0.01,0.031,0.041,4.7e-17,0.025,0.58,0.14,0.24,0.29,0.55,0.15),stringsAsFactors = F)

df$category <- factor(df$category,levels=c("c1","c2","c3","c4","c5"))

使用此命令:

代码语言:javascript
复制
library(betareg)
fit <- betareg(value ~ category, data = df)

我要得到这个error

代码语言:javascript
复制
Error in chol.default(K) : 
  the leading minor of order 5 is not positive definite
In addition: Warning message:
In sqrt(wpp) : NaNs produced
Error in chol.default(K) : 
  the leading minor of order 5 is not positive definite
In addition: Warning messages:
1: In betareg.fit(X, Y, Z, weights, offset, link, link.phi, type, control) :
  failed to invert the information matrix: iteration stopped prematurely
2: In sqrt(wpp) : NaNs produced

是否有任何解决方案或贝塔回归简单地不能适合这些数据?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-16 10:17:59

在第1类数据中拟合β分布将是非常困难的,因为三个观测值基本上为零。四舍五入为五位数: 0.00000,0.00000,0.00000,0.00320,0.00610,0.01500。我不清楚这个类别是否应该和其他类别一样建模。

在第4类中,还有另一个数值为零的观测,尽管其他观测值稍大: 0.00000、0.01000、0.02500、0.03100、0.03400、0.04100。

省略第1类,至少允许估计模型,而不存在数值问题。另外一个问题是,渐近推断是否能很好地逼近每组六个观测值的两个参数。然而,不同群体之间的精确度似乎并不相同。

代码语言:javascript
复制
betareg(value ~ category | 1, data = df, subset = category != "c1")
## Call:
## betareg(formula = value ~ category | 1, data = df, subset = category != 
##     "c1")
## 
## Coefficients (mean model with logit link):
## (Intercept)   categoryc3   categoryc4   categoryc5  
##      0.2634      -2.2758      -4.4627      -1.0206  
## 
## Phi coefficients (precision model with log link):
## (Intercept)  
##       2.312  
betareg(value ~ category | category, data = df, subset = category != "c1")
## Call:
## betareg(formula = value ~ category | category, data = df, subset = category != 
##     "c1")
## 
## Coefficients (mean model with logit link):
## (Intercept)   categoryc3   categoryc4   categoryc5  
##      0.2566      -2.6676      -4.0601      -0.9784  
## 
## Phi coefficients (precision model with log link):
## (Intercept)   categoryc3   categoryc4   categoryc5  
##      2.0849       3.5619      -0.2308      -0.1376  
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46724154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档