Re: [R-br] regressao linear com constante igual azero

Se é isso o que deseja: dumvar1 = table(1:length(var1),as.factor(var1)) dumvar2 = table(1:length(var2),as.factor(var2)) summary(lm(S~0+dumvar1[,-1]+dumvar2[,-1])) Coefficients: Estimate Std. Error t value Pr(>|t|) dumvar1[, -1]B 0.234001 0.007011 33.38 <2e-16 *** dumvar1[, -1]C 0.391907 0.007097 55.22 <2e-16 *** dumvar2[, -1]B 0.182071 0.007258 25.09 <2e-16 *** dumvar2[, -1]C -0.190209 0.007076 -26.88 <2e-16 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Att Robert #cuidado com a interpretação dos coeficientes. Em 28 de abril de 2015 13:25, Bernardo Rangel Tura <tura@centroin.com.br> escreveu:
On 04/28/2015 11:16 AM, Rafael Costa wrote:
Prezado Tura,
var1 e var2 são variáveis qualitativas com 3 categorias cada (dummies multicategóricas). Na 1ª regressão, note que não há estimativas para var1A e var2A explicitamente porque essas categorias são usadas como referência (ou base) em cada variável. Isto é feito para evitar problemas de multicolinearidade perfeita (consulte os livros de econometria do GUJARATI ou do WOOLDRIDGE para rápida compreensão deste problema, conhecido como "armadilha da variável dummy"). O intercepto do 1º modelo é portanto o intercepto da regressão para o grupo de referência em que var1=A e var2=A. Já os coeficientes estimados da variável dummy de um determinado grupo representa a diferença estimada nos interceptos entre aquele grupo e o grupo-base. Por exemplo, 0.16 (valor do coeficiente de var1B) representa a diferença entre o intercepto deste grupo (var1=B e var2=A) e o intercepto do grupo-base (var1=A e var2=A). Na 2ª regressão, ao optar por excluir o intercepto, não há mais a necessidade de retirar uma categoria de cada variável dummy para evitar colinearidade perfeita. Agora pode-se escolher que uma das variáveis mantenham todas a suas categorias, desde que nas demais variáveis dummies se continue excluindo uma categoria que será utilizada como referência ou base. Note que agora o coeficiente var1A na 2ª regressão é justamente o mesmo valor do intercepto na 1ª regressão e os demais coeficientes da var1 são agora a soma dos coeficientes na 1ª regressão com o intercepto (por exemplo, o var1B da 2ª regressão = intercepto da 1ª regressão + var1B da 1ª regressão).
Espero ter ajudado, Rafael.
Rafael
Entendo a sua explicação mas acho que você não entendeu o que eu desejo. Para o modelo preciso de uma uma regressão que o intercepto tenha valor de ZERO, ou seja,
S = 0 + b1*var1=='B' + b2*var1=='C' + b3*var2=='B' + b4*var2=='C' + erro
Entende o modelo que preciso?
Abraços
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

On 04/28/2015 02:09 PM, Robert Iquiapaza wrote:
Se é isso o que deseja:
dumvar1 = table(1:length(var1),as.factor(var1)) dumvar2 = table(1:length(var2),as.factor(var2))
summary(lm(S~0+dumvar1[,-1]+dumvar2[,-1]))
Coefficients: Estimate Std. Error t value Pr(>|t|) dumvar1[, -1]B 0.234001 0.007011 33.38 <2e-16 *** dumvar1[, -1]C 0.391907 0.007097 55.22 <2e-16 *** dumvar2[, -1]B 0.182071 0.007258 25.09 <2e-16 *** dumvar2[, -1]C -0.190209 0.007076 -26.88 <2e-16 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Att
Robert
Perfeito Robert! E muito fácil de entender, você cria variáveis dummy para cada nível num mesmo objeto! Obrigado a todos pela atenção! Bernardo

Ao retirar o intercepto( o mesmo que fazer seu valor ser zero) o seu modelo deixa de ser de efeito marginal e passa a ser de medias. Ou seja o modelo y=a+bx on b e a taxa de mudança em y para níveis de x, passa a ser y=BX e assim força o modelo a passar pelo intercepto zero, pois qdo x for zero y tbm sera. Em 28/04/2015 14:10, "Robert Iquiapaza" <rbali@ufmg.br> escreveu:
Se é isso o que deseja:
dumvar1 = table(1:length(var1),as.factor(var1)) dumvar2 = table(1:length(var2),as.factor(var2))
summary(lm(S~0+dumvar1[,-1]+dumvar2[,-1]))
Coefficients: Estimate Std. Error t value Pr(>|t|) dumvar1[, -1]B 0.234001 0.007011 33.38 <2e-16 *** dumvar1[, -1]C 0.391907 0.007097 55.22 <2e-16 *** dumvar2[, -1]B 0.182071 0.007258 25.09 <2e-16 *** dumvar2[, -1]C -0.190209 0.007076 -26.88 <2e-16 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Att
Robert
#cuidado com a interpretação dos coeficientes.
Em 28 de abril de 2015 13:25, Bernardo Rangel Tura <tura@centroin.com.br> escreveu:
On 04/28/2015 11:16 AM, Rafael Costa wrote:
Prezado Tura,
var1 e var2 são variáveis qualitativas com 3 categorias cada (dummies multicategóricas). Na 1ª regressão, note que não há estimativas para var1A e var2A explicitamente porque essas categorias são usadas como referência (ou base) em cada variável. Isto é feito para evitar problemas de multicolinearidade perfeita (consulte os livros de econometria do GUJARATI ou do WOOLDRIDGE para rápida compreensão deste problema, conhecido como "armadilha da variável dummy"). O intercepto do 1º modelo é portanto o intercepto da regressão para o grupo de referência em que var1=A e var2=A. Já os coeficientes estimados da variável dummy de um determinado grupo representa a diferença estimada nos interceptos entre aquele grupo e o grupo-base. Por exemplo, 0.16 (valor do coeficiente de var1B) representa a diferença entre o intercepto deste grupo (var1=B e var2=A) e o intercepto do grupo-base (var1=A e var2=A). Na 2ª regressão, ao optar por excluir o intercepto, não há mais a necessidade de retirar uma categoria de cada variável dummy para evitar colinearidade perfeita. Agora pode-se escolher que uma das variáveis mantenham todas a suas categorias, desde que nas demais variáveis dummies se continue excluindo uma categoria que será utilizada como referência ou base. Note que agora o coeficiente var1A na 2ª regressão é justamente o mesmo valor do intercepto na 1ª regressão e os demais coeficientes da var1 são agora a soma dos coeficientes na 1ª regressão com o intercepto (por exemplo, o var1B da 2ª regressão = intercepto da 1ª regressão + var1B da 1ª regressão).
Espero ter ajudado, Rafael.
Rafael
Entendo a sua explicação mas acho que você não entendeu o que eu desejo. Para o modelo preciso de uma uma regressão que o intercepto tenha valor de ZERO, ou seja,
S = 0 + b1*var1=='B' + b2*var1=='C' + b3*var2=='B' + b4*var2=='C' + erro
Entende o modelo que preciso?
Abraços
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Robert, compreendi o que você fez, mas conforme você observou, não saberia explicar o que representa esses coeficientes estimados. Você saberia interpretá-los?
Em 28/04/2015 14:10, "Robert Iquiapaza" <rbali@ufmg.br> escreveu:
Se é isso o que deseja:
dumvar1 = table(1:length(var1),as.factor(var1)) dumvar2 = table(1:length(var2),as.factor(var2))
summary(lm(S~0+dumvar1[,-1]+dumvar2[,-1]))
Coefficients: Estimate Std. Error t value Pr(>|t|) dumvar1[, -1]B 0.234001 0.007011 33.38 <2e-16 *** dumvar1[, -1]C 0.391907 0.007097 55.22 <2e-16 *** dumvar2[, -1]B 0.182071 0.007258 25.09 <2e-16 *** dumvar2[, -1]C -0.190209 0.007076 -26.88 <2e-16 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Att
Robert
#cuidado com a interpretação dos coeficientes.
--
*Rafael Carneiro da CostaDoutorando em EconomiaCentro de Pós-Graduação em Economia - CAENUniversidade Federal do Ceará - UFC*
participantes (4)
-
Bernardo Rangel Tura
-
Fernando Antonio de souza
-
Rafael Costa
-
Robert Iquiapaza