set.seed(123456) e1 <- rnorm(100) e2 <- rnorm(100) y1 <- cumsum(e1) y2 <- 0.6*y1 + e2 lr.reg <- lm(y2 ~ y1) error <- residuals(lr.reg) error.lagged <- error[-c(1, 100)] dy1 <- diff(y1) dy2 <- diff(y2) diff.dat <- data.frame(embed(cbind(dy1, dy2), 2)) colnames(diff.dat) <- c('dy1', 'dy2', 'dy1.1', 'dy2.1') ecm.reg <- lm(dy2 ~ error.lagged + dy1.1 + dy2.1, data=diff.dat)