‘ ######## Montando uma regressão#######
‘vamos criar um workfile com o nome de coeficientes'
workfile coeficientes u 1 20
'vamos criar as séries x1 , x2 e y onde nrnd é a normal(0,1) e o restante você já sabe'
series x1= 15+@nrnd
series x2=10+10*@nrnd
series u=nrnd
series y=3*(x1^2)+2*x2+5+u
'vamos criar um vetor para estimar o intercepto
series betazero=1
'vamos guardar as variáveis e a série que só tem 1 no grupo denominado g'
group g betazero x1 x2
'vamos converter o grupo g em matriz chamada xx
matrix xx=@convert(g)
'vamos calcular os coeficientes
vector betas=@inverse((@transpose(xx)*xx))*@transpose(xx)*y
'vamos mostrar os coeficientes
show betas
'vamos criar a equação e comparar os coeficientes
equation eq01.ls y c x1 x2
'vamos mostrar os coeficientes
show c
segunda-feira, 22 de setembro de 2008
Comandos Básicos em R
### Medidas de avaliação de ajuste na amostra
y=ipc # coloque a série real
previsao<-eq$fitted.values ## coloque a série ajustada
diferenca2=(y-previsao)^2
diferenca=y-previsao
y2=y^2
n<-length(y)
previsao2=previsao^2
diferenca_perc= diferenca/y
rmse=sqrt(sum(diferenca2)/n)
mae=sum(abs(diferenca))/n
mape=(sum(abs(diferenca_perc))/ n)*100
tic=sqrt(sum(diferenca2)/n)/(sqrt(sum(y2)/n)+sqrt(sum(previsao2)/n))
media_prev=mean(previsao)
mediay=mean(y)
bp=((media_prev-mediay)^2)/(sum(diferenca2)/n)
desvio_prev=sd(previsao)
desvioy=sd(y)
vp=(desvio_prev-desvioy)^2/(sum(diferenca2)/n)
cp=1-(bp+vp)
resultado<-list("raiz do erro quadrático médio"=rmse, "erro absoluto médio"=mae,
"erro percentual absoluto médio"=mape,"coeficiente de desigualdade de Theil"=tic,
"proporção de vício"=bp,"proporção de variância"=vp,"proporção de covariância"=cp)
resultado
y=ipc # coloque a série real
previsao<-eq$fitted.values ## coloque a série ajustada
diferenca2=(y-previsao)^2
diferenca=y-previsao
y2=y^2
n<-length(y)
previsao2=previsao^2
diferenca_perc= diferenca/y
rmse=sqrt(sum(diferenca2)/n)
mae=sum(abs(diferenca))/n
mape=(sum(abs(diferenca_perc))/ n)*100
tic=sqrt(sum(diferenca2)/n)/(sqrt(sum(y2)/n)+sqrt(sum(previsao2)/n))
media_prev=mean(previsao)
mediay=mean(y)
bp=((media_prev-mediay)^2)/(sum(diferenca2)/n)
desvio_prev=sd(previsao)
desvioy=sd(y)
vp=(desvio_prev-desvioy)^2/(sum(diferenca2)/n)
cp=1-(bp+vp)
resultado<-list("raiz do erro quadrático médio"=rmse, "erro absoluto médio"=mae,
"erro percentual absoluto médio"=mape,"coeficiente de desigualdade de Theil"=tic,
"proporção de vício"=bp,"proporção de variância"=vp,"proporção de covariância"=cp)
resultado
Assinar:
Postagens (Atom)