Subido por Carlos Andrés Barrera Montoya

Cambio estructural

Anuncio
Cambio estructural
# llamar base de datos
attach(data)
options(scipen=999)
# Convertir serie de tiempo
library(tseries)
serets = ts(sere, frequency = n, start = c(fecha,inicio))
plot(xts,yts,col = "blue", xlab = "xts", ylab = "yts ")
plot(yts, col="red")
# 1. Estimar regresión con todos los datos
rel = yts ~xts
model = lm(rel)
summary(model)
sse = deviance(model)
# 2) Estime los submodelos requeridos
#Primer Corte de información
model1 = lm(rel, subset= fecha < corte)
summary(model1)
sse1=deviance(model1)
#Segundo Corte de información
model2 = lm(rel, subset= fecha >= corte)
summary(model2)
sse2=deviance(model2)
#Convertimos los valores de SSE para todos los casos como lo propone Chow.
sser = sse
ssenr = sse1 + sse2
# Determinamos los valores de los parámetros y la cantidad de los datos en corte:
k = length(coef(model))
j = 2# número de submodelos creados
N = nrow(yts) #tota
n1 = nrow(datos1)
n2 = nrow(datos2)
# 5) Aplicamos la fórmula de Fcalculado
fc=((sser-ssenr)/k)/((ssenr)/(N-(j*k)))
#6) Aplicamos la función de Fteórico
alpha = 0.01
ft = qf(alpha,k,N-(j*k),lower.tail=FALSE)
# 7) Contrastamos con P_valor
pvalue = pf(fc,k,N-(j*k),lower.tail=FALSE)
data.frame(fc,ft,pvalue)
# test de cusum
library(strucchange)
cusum = efp(rel, type = c("Rec-CUSUM"))
plot(cusum)
sctest(rel)
#analisis grafico de puntos de corte factibles.
breaks = 3
point = breakpoints(rel, h = 0.15)
sc = coef(point, breaks = breaks)
plot.ts(yts)
lines(fitted(point, breaks = breaks), col =4)
lines(confint(point, breaks = breaks))
Descargar