
Concordo, aparentemente o revisor está usando a fórmula "correta" no contexto de modelos lineares, "mais variáveis explicativas maior R2". Só que no caso do modelo linear sem intercepto o R2 não tem uma definição clara, se usar a formula usual R2= 1 - SQE/SQT pode até ser negativo. A fórmula utilizada em vários softwares incluído o R, para modelo linear sem intercepto, não é interpretável, faça o teste de hipótese e se tiver mesmo que apresentar o modelo sem intercepto eu não reportaria o R2. ######## intercepto=5 #depois pode mudar esse valor para verificar a influência x<-runif(30) y<-intercepto-rnorm(30,2*x) summary(lm(y~x)) #mod.com.int summary(lm(y~0+x)) #mod.sem.int # A formula do usada no R e alguns outros softwares é # ilustrada usando a soma dos quadrados da regressão (SQR) # e dos erros do modelo (SQE) R2= SQR/(SQR+SQE) # usando uma função para as somas dos quadrados sq=function(z,m="mz")sum((z-ifelse(m=="mz",mean(z),m))^2) #R2 mod.com.int sq(fitted(lm(y~x)),mean(y))/(sq(fitted(lm(y~x)),mean(y))+sq(y-fitted(lm(y~x)))) #R2 mod.sem.int sq(fitted(lm(y~0+x)),0)/(sq(fitted(lm(y~0+x)),0)+sq(y-fitted(lm(y~0+x)),0)) sq(fitted(lm(y~0+x)),mean(y))/(sq(fitted(lm(y~0+x)),mean(y))+sq(y-fitted(lm(y~0+x)))) #sem forçar a passar pelo zero # Só que essa fórmula é válida somente para o modelo linear com intercepto # onde SQT = SQR + SQE # Se usar a fórmula tradicional de R2 = 1 - SQE/SQT no modelo linear sem intercepto, # normalmente, dependendo do verdadeiro valor do intercepto vai dar um R2 menor ou negativo #R2 mod.com.int 1-sq(y-fitted(lm(y~x)))/sq(y) #R2 mod.sem.int 1-sq(y-fitted(lm(y~0+x)))/sq(y) # o qual não tem sentido, assim como tem pouco sentido rodar um modelo sem intercepto, # quando o verdadeiro valor desse parâmetro é muito diferente de zero, como # pode ver na figura plot(y~x) abline(lm(y~x),col=3) #mod.com.int abline(lm(y~0+x),col=4)#mod.sem.int legend("topright", legend = c("mod.com.int","mod.sem.int"), col=3:4, pch=1, lty=1, merge=TRUE)#, trace=TRUE) #rode novamente com intercepto=0, agora a figura pode ter mais sentido, # mas eu não falaria que o R2 aumentou, o problema está na definição de R2 ##### fim Sds, Robert Iquiapaza CEPEAD/FACE/UFMG Em 13 de novembro de 2012 10:11, marcelo claro de souza < marcelo.claro.souza@gmail.com> escreveu:
Bom dia a todos. Rodei duas correlações lineares com e sem intercepto, utilizando o mesmo conjunto de dados, para a determinação de uma equação para determinação da área foliar de uma espécie arbórea. regressão com intercepto lm(y~x) regressão sem intercepto lm(y~0+x) ou lm(y~x-1)
O R2 da equação sem intercepto foi maior que o R2 da regressão com intercepto, e o assessor de uma revista questionou que isso seria matematicamente improvável e solicitou que eu refizesse as análises. Refiz e obtive os mesmos resultados. É possível essa variação nos valores de R2 ou estou fazendo algo errado? Muito obrigado pela ajuda. Abraço
Marcelo
_______________________________________________ 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.