-
Notifications
You must be signed in to change notification settings - Fork 0
/
tf_infbay_malcolm.R
52 lines (38 loc) · 1.91 KB
/
tf_infbay_malcolm.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
library(dplyr)
library(readr)
library(lrgs)
library(coda)
library(MCMCpack)
rm(list = ls())
setwd("~/R/projetos/me705_infbay/trabalho_final")
dados = read_csv("CARSDEKHO.csv")
dados = dados %>%
mutate_at(vars(name,fuel,seller_type,transmission, owner), as.factor) %>%
mutate(selling_price = selling_price/73) # conversao da moeda indiana
design <- model.matrix(~ selling_price + year + km_driven + transmission*year + transmission*km_driven,
data = dados,
contrasts.arg = list(transmission = "contr.sum")) %>% data.frame()
mu.vector1 <- rep(-40, 5)
mu.vector2 <- rep(40, 5)
cov.vector1 <- diag(c(0.0001, rep(0.01, 4)))
n_itera <- 1e5
intervalo <- n_itera/10
fit.1.mcmc <- MCMCregress(log(selling_price) ~ year + km_driven + year.transmission1 + km_driven.transmission1,
data = design,
burnin = n_itera, mcmc = n_itera, thin = intervalo,
b0 = mu.vector1, B0 = cov.vector1,
verbose = intervalo)
fit.2.mcmc <- MCMCregress(log(selling_price) ~ year + km_driven + year.transmission1 + km_driven.transmission1,
data = design,
burnin = n_itera, mcmc = n_itera, thin = intervalo,
b0 = mu.vector2, B0 = cov.vector1,
verbose = intervalo)
list(fit.1.mcmc[,1], fit.2.mcmc[,1]) %>% gelman.diag(confidence = 0.95)
list(fit.1.mcmc[,2], fit.2.mcmc[,2]) %>% gelman.diag(confidence = 0.95)
list(fit.1.mcmc[,3], fit.2.mcmc[,3]) %>% gelman.diag(confidence = 0.95)
list(fit.1.mcmc[,4], fit.2.mcmc[,4]) %>% gelman.diag(confidence = 0.95)
list(fit.1.mcmc[,5], fit.2.mcmc[,5]) %>% gelman.diag(confidence = 0.95)
list(fit.1.mcmc[,6], fit.2.mcmc[,6]) %>% gelman.diag(confidence = 0.95)
### Data frame de cada cadeia
fit.1.mcmc %>% data.frame() %>% summary()
fit.2.mcmc %>% data.frame() %>% summary()