[RsR] The robust regression confidence interval
Rand Wilcox
rw||cox @end|ng |rom u@c@edu
Wed May 8 18:51:52 CEST 2013
There are a collection of methods summarized in
Wilcox, R. R. (2012). Introduction to Robust Estimation and
Hypothesis Testing 3rd Edition. New York: Elsevier.
Heteroscedasticity is addressed as well. Descriptions and illustrations of R functions are included.
Rand Wilcox
Professor
Dept of Psychology
3620 McClintock Ave
USC
Los Angeles, CA 90089-1061
FAX: 213-746-9082
For information about statistics books and software, see http://college.usc.edu/labs/rwilcox/home
----- Original Message -----
From: Roger Koenker <rkoenker using illinois.edu>
Date: Wednesday, May 8, 2013 9:22 am
Subject: Re: [RsR] The robust regression confidence interval
To: Anton Kochepasov <akss using outlook.com>
Cc: "r-sig-robust using r-project.org" <r-sig-robust using r-project.org>
> For quantile regression you can again just use summary(rq(...)).
>
>
> url: www.econ.uiuc.edu/~roger Roger Koenker
> email rkoenker using uiuc.edu Department of Economics
> vox: 217-333-4558 University of Illinois
> fax: 217-244-6678 Urbana, IL 61801
>
> On May 8, 2013, at 10:51 AM, Anton Kochepasov wrote:
>
> > Hi everyone,
> >
> > A few years ago there was a discussion about a robust regression
> confidence interval (https://stat.ethz.ch/pipermail/r-sig-
> robust/2008/000217.html) and I would like to resort your courtesy
> again.>
> > I'm trying to compare a few regression models for my data. For
> linear regression everything is quite understandable, but robust
> and quantile regressions are not so obvious. I could not find
> almost anything about calculating confidence interval for these
> regression models unless I looked for something wrong.
> >
> > My code in R looks as follows:
> > # Robust linear modeling
> > library(MASS)
> > library(robustbase)
> > library(robust)
> > set.seed(343);
> > x <- rnorm(1000)
> > y <- x + 2*rnorm(1000)
> >
> > lm1<-lm(y~x); rlm1<-rlm(y~x); rlm2 <- lmRob(y~x); rlm3 <- lmrob(y~x)
> > cbind(summary(lm1)$coeff, confint(lm1))
> > cbind(summary(rlm1)$coeff, confint(rlm1))
> > cbind(summary(rlm2)$coeff, confint(rlm2))
> > cbind(summary(rlm3)$coeff, confint(rlm3))
> >
> > And produces the following result:
> >> cbind(summary(lm1)$coeff, confint(lm1))
> > Estimate Std. Error t value Pr(>|t|)
> 2.5 % 97.5 %
> > (Intercept) -0.06973191 0.06408983 -1.088034 2.768429e-01 -
> 0.1954982 0.05603438
> > x 0.97647196 0.06619635 14.751145 1.071805e-44
> 0.8465720 1.10637196
> >> cbind(summary(rlm1)$coeff, confint(rlm1))
> > Value Std. Error t value 2.5 % 97.5 %
> > (Intercept) -0.06131788 0.06714405 -0.9132288 NA NA
> > x 0.96016596 0.06935096 13.8450275 NA NA
> >> cbind(summary(rlm2)$coeff, confint(rlm2))
> > Error in UseMethod("vcov") :
> > no applicable method for 'vcov' applied to an object of class
> "lmRob">> cbind(summary(rlm3)$coeff, confint(rlm3))
> > Estimate Std. Error t value Pr(>|t|)
> 2.5 % 97.5 %
> > (Intercept) -0.0568964 0.06608987 -0.8608945 3.895029e-01 -
> 0.1865874 0.07279464
> > x 0.9612520 0.06821558 14.0913850 2.921913e-41
> 0.8273896 1.09511448
> >
> > It's easy to spot that linear model works OK and only one robust
> regression gives a sensible result. Another observation is that
> lmrob(), which produces some actual confidence interval, calculates
> it in the same manner as lm(), with using 1.96 as the student
> coefficient.>
> > Could you share your opinion if it is a correct way to produce a
> confidence interval for the robust regression model (same as for
> the linear regression)? May the same method be used for the
> quantile regression model? If not, what should I use?
> >
> > Thank you in advance,
> > Anton
> > _______________________________________________
> > R-SIG-Robust using r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-sig-robust
>
> _______________________________________________
> R-SIG-Robust using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-robust
>
More information about the R-SIG-Robust
mailing list