lmRob()主要是线性数据:错误和防御

时间:2016-11-16 17:50:22

标签: r

我正在使用robust::lmRob()

处理旧版R脚本

lmRob()的文档非常清楚,示例运行良好(对于文档和示例,请参阅here

基于此,我原以为这个简单的脚本会起作用,但是它失败了' msg.UCV'找不到

library(robust)
xx = c(c(2.1111,3.1111,4.1111),seq(1,7,by=0.3))
yy = 0.5+1.5*xx 
yy[1] = -21; yy[2] = 0; yy[3] = -10
df = data.frame(x=xx,y=yy)

mf = lmRob(y~x, data=df)

请注意,数据是21个完全线性的行,加上三个异常值。

如果使用

yy = 0.5+1.5*xx + 0.01*xx^2

然后不会出现错误。

我会切换到robustbase::lmrob(),但lmRob.fit.compute()似乎做了一些公平nontrivial things

防止近线性数据导致程序错误的防御性编程技术是什么?

0 个答案:

没有答案