[R] Backtransforming regression coefficient for scaled covariate

Gorjanc Gregor Gregor.Gorjanc at bfro.uni-lj.si
Sun Sep 11 22:25:23 CEST 2005


Hello!

Scaling i.e. (x - mean(x)) / sd(x) of covariates in the model 
can improve the efficiency of estimation. That is nice, but 
sometimes one needs to report estimates for original scale. I
was able to backtransform estimates of linear regression quite
easily but I stumped on higher polynomials. Is there a general
rule that I am not aware of or is my algebra so bad?

I appologize for not pure R question but I hope others will also
benefit. I attached the R code for example bellow.

## --- Generate data for linear regression ---
e <- rnorm(n = 100, sd = 10)
x <- rnorm(n = 100, mean = 100, sd = 10)
b <- 3
mu <- 2
y <- mu + b * x + e
plot(y = y, x = x)

## Fit linear regression
(lm1 <- lm(y ~ x))

## Fit linear regression with transformed i.e. standardized covariate
(lm2 <- lm(y ~ scale(x)))

## Backtransform estimate of regression coefficient
coef(lm2)[2] / sd(x)

## --- Generate data for quadratic regression ---
e <- rnorm(n = 100, sd = 10)
x <- runif(n = 100, min = 1, max = 100)
b1 <- 2
b2 <- -0.01
mu <- 2
y <- mu + b1 * x + b2 * x^2 + e
plot(y = y, x = x)

## Fit regression
(lm1 <- lm(y ~ x + I(x^2)))

## Fit regression with transformed i.e. standardized covariate
(lm2 <- lm(y ~ scale(x) + I(scale(x)^2)))

## Backtransform estimates of regression coefficients
## ??

Lep pozdrav / With regards,
    Gregor Gorjanc

----------------------------------------------------------------------
University of Ljubljana
Biotechnical Faculty        URI: http://www.bfro.uni-lj.si/MR/ggorjan
Zootechnical Department     mail: gregor.gorjanc <at> bfro.uni-lj.si
Groblje 3                   tel: +386 (0)1 72 17 861
SI-1230 Domzale             fax: +386 (0)1 72 17 888
Slovenia, Europe
----------------------------------------------------------------------
"One must learn by doing the thing; for though you think you know it,
 you have no certainty until you try." Sophocles ~ 450 B.C.




More information about the R-help mailing list