quarta-feira, 28 de janeiro de 2009

Correria pura...

Nestas últimas semanas estive na euforia. Me concentrei em análises estatísticas e programação.
As simulações já estão prontas para publicação de dois artigos, falta claro, falar sobre a teoria, etc, etc. Uma delas envolve uma consultoria para o Bacen, os modelos de previsão estão ótimos, mas faltam alguns ajustes, pois sempre tem alguém que questiona sobre possíveis violações de pressupostos sobre a distribuição dos erros e pressupostos sobre as variáveis. Mas que a previsão está boa, está sim.

Aprendi a mexer em mais outro programa. Tô ficando boa nisto...apesar da burrice, pois demora para o cérebro fixar... Ah, mas aprender sozinha realmente não é fácil!

Aos poucos as coisas andam.


Ah, depois coloco outros comandos sobre séries temporais. Na realidade, já estou montando é uma apostila de tanta coisa que faço e fico pensando.


bjim

sexta-feira, 9 de janeiro de 2009

Modelos Lineares Generalizados

### Olha aí, um GLM da famíla Poisson

modelo <- glm(dano ~ offset(log(tipo)) + construcao+ mes+operacao , family = poisson(link = "log"), data = dt)

summary(modelo)


####Verificação do ajuste do modelo. Faça isto:

1-pchisq(modelo$deviance,modelo$df.residual) ## Probabilidade p

"Deviance"res <- residuals(modelo,type="deviance")


###Verificação de alguns pressuposto do modelo,. Ah, faltou o envelope, hehe!!!

ordem <- 1:length(res)
plot(modelo$fitted.values, res, xlab='fitted', ylab = 'Desvio Residual')
plot(ordem, res, xlab='ordem', ylab = 'Desvio Residual')
hist(res)
qqnorm(res); qqline(res);

quarta-feira, 7 de janeiro de 2009

Como eu amo minhas irmãs...

Valéria+Eu+Varleine em uma festinha de amigos.

Faltaram apenas meu amado pai e amada mãe e mais alguns amigos, dentre estes, principalmente Dani.





terça-feira, 6 de janeiro de 2009

Microeconomia em laboratório

### Laboratório de Micro: Quem dera se na minha graduação eu tivesse aprendido
### micro no laboratório...Mostrei isto para alunos meus
## e eles amaram.

### Bens substitutos

u<-function(x1,x2,a=2,b=3) { a*x1+b*x2
}

x1<-seq(0,10,by=1)
x2<-x1
z<-outer(x1,x2,u)
persp(x1, x2, z, theta = 30, phi = 30, expand = 0.5, col = "green")
contour(x1,x2,z)
image(x1,x2,z)



### Cobb-Douglas

u<-function(x1,x2,a=1/2,b=1/2) {
x1^a*x2^b
}

x1<-seq(0,10,by=1)
x2<-x1
z<-outer(x1,x2,u)
persp(x1, x2, z, theta = 60, phi = 30, expand = 0.5, col = 2)
contour(x1,x2,z)
image(x1,x2,z)

####


f <- function(x1,x2) {

x1*x2+5*(400-10*x1-4*x2)

}


### Derivadas

derivx <- expression( x1*x2+ 5*(400-10*x1-4*x2))
( D.x1 <- D(derivx, "x1") )
x2 <- 0:100
Dx1<-eval(D.x1)


derivy <- expression(x1*x2+ 5*(400-10*x1-4*x2))
( D.x2 <- D(derivx, "x2") )
x1 <- 0:100
Dx2<-eval(D.x2)

par(mfrow=c(2,2))
x1<-seq(0,100,by=1)
x2<-x1
z<-outer(x1,x2,f)
persp(x1, x2, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue")
contour(x1,x2,z)
image(x1,x2,z)
plot(Dx2/Dx1,type="l",col=2)


segunda-feira, 5 de janeiro de 2009

A importância de uma análise descritiva inicial




Minha amiga me perguntou por qual motivo havia instabilidade nas estimativas recursivas dos coeficientes de seu modelo. Eu propus que poderiam ser vários motivos, desde uma base de dados mensurada incorretamente até forma funcional incorreta do modelo.




Vejam só estas variáveis ( dentre várias que causavam problemas). A taxa de juros foi codificada em 6 níveis e observe que o Boxplot do crédito e câmbio relacionados a cada taxa de juros codificada apresenta nítida diferença em relação aos outros, nas taxas de juros codificadas 6 e 8. A variável crédito é mais mais problemática por apresentar maior número de pontos discrepantes e possuir distribuição mais assimétrica prejudicando, assim, a obtenção de testes de hipóteses convencionais.




Observe o gráfico co-plot.

par(mfrow=c(2,2))
boxplot(cambio ~ juros, data = dados, col = "bisque",xlab="juros codificados",main="Juros~Câmbio")
boxplot(credito ~ juros, data = dados, col = "bisque",xlab="juros codificados",main="Juros~Crédito")
hist(taxa,main="Copom",prob=T,col=4)
lines(density(taxa),col=2)
coplot(credito ~ cambio juros, data = dados,col=2)