[R] setting parameters equal in lm

Rui Barradas ruipbarradas at sapo.pt
Tue May 29 15:11:01 CEST 2012


Simple, just make y2 <- y - 0.5*X2

Rui Barradas

Em 29-05-2012 13:55, Dustin Fife escreveu:
> That did it. Thanks! One more follow-up questions. How do I set a parameter
> to a particular value? I tried I(.5*X2), but that didn't do what I
> expected.
>
> On Tue, May 29, 2012 at 6:39 AM, Rui Barradas<ruipbarradas at sapo.pt>  wrote:
>
>> Hello,
>>
>> Your model is equivalent of
>>
>> y = b1(X1 + X3) + b2X2
>>
>> (plus error)
>>
>> So, use I() to add X1 and X3. You don't need to create an extra variable
>> X13<- X1 + X3. See the help page for it. The point on function formula.
>>
>> ?I
>>
>> linMod2 = lm(Y ~ -1 + I(X1  + X3) + X2, data=data.set)
>> summary(linMod2)
>> # The same.
>> linMod3 = lm(Y ~ 0 + I(X1  + X3) + X2, data=data.set)
>> summary(linMod3)
>>
>> With set.seed(1) your common slope is
>>
>> coef(linMod2)
>> I(X1 + X3)         X2
>>   0.4237869  3.3626984
>>
>> Also, I find it better to put 'library', 'require', etc as the first lines
>> of code.
>>
>> Hope this helps,
>>
>> Rui Barradas
>>
>> Em 29-05-2012 04:14, Dustin Fife escreveu:
>>
>>   Forgive me if this is a trivial question, but I couldn't find it an answer
>>> in former forums. I'm trying to reproduce some SAS results where they set
>>> two parameters equal. For example:
>>>
>>> y = b1X1 + b2X2 + b1X3
>>>
>>> Notice that the variables X1 and X3 both have the same slope and the
>>> intercept has been removed. How do I get an estimate of this regression
>>> model? I know how to remove the intercept ("-1" somewhere after the
>>> tilde).
>>> But how about setting parameters equal? I have used the car package to set
>>> up linear hypotheses:
>>>
>>>
>>> X1 = rnorm(20, 10, 5); X2 = rnorm(20, 10, 5); X3 = rnorm(20, 10, 5)
>>> Y = .5*X1 + 3*X2 + .5*X3 + rnorm(20, 0, 15)
>>> data.set = data.frame(cbind(X1, X2, X3, Y))
>>> linMod = lm(Y~X1 + X2 + X3, data=data.set)
>>> require(car)
>>> linearHypothesis(linMod, c("(Intercept)=0", "X1-X3=0"))
>>>
>>> (forgive the unconventional use of the equal sign....old habit).
>>> Unfortunately, the linearHypothesis is always compared to a full model
>>> (where the parameters are freely estimated). I want to have an ANOVA
>>> summary table for the reduced model. Any ideas? Thanks in advance for the
>>> help!
>>>
>>>
>



More information about the R-help mailing list