Advertisement
Guest User

Untitled

a guest
Oct 6th, 2015
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.66 KB | None | 0 0
  1. # I 3
  2.  
  3. day <- as.numeric(format(x$aTime + x$aOffset, "%j", tz="GMT"))
  4. z <- x[day == 11 & x["dest"] == "ORD",]
  5. z <- z[order(z$aTime), ]
  6. lmORD.model <- lm(arrDelay ~ depDelay, data = z)
  7. lmORD.res <- resid(lmORD.model)
  8. # dat junk be nonuniform errorz
  9. plot(z$aTime, lmORD.res^2)
  10. sigmaSq <- mean(lmORD.res^2)
  11. # summary(lmORD.model)$sigma^2
  12. eiej <- sapply(2:nrow(z), function (x) {
  13. lmORD.res[x] * lmORD.res[x-1]
  14. })
  15. phi <- -1 * log(mean(eiej) / sigmaSq)
  16. # do we need to divide by something to get s^2? or does it divide out...
  17.  
  18.  
  19. q <- x[day == 44 & x["dest"] == "ORD",]
  20. q <- q[order(q$aTime), ]
  21. rownames(q) <- NULL
  22.  
  23. plot(q$depDelay,q$arrDelay)
  24. newLmORD.model <- lm(arrDelay ~ depDelay, data = q)
  25. newLmORD.res <- resid(newLmORD.model)
  26. summary(newLmORD.model)
  27. lm.pred <- predict(newLmORD.model, q, interval="predict")
  28. mean((q$arrDelay > lm.pred[,3]) | (q$arrDelay < lm.pred[,2]))
  29. # [1] 0.05511811
  30.  
  31. newSigmaSq <- mean(newLmORD.res^2) # divide by something?
  32. covarianceFn <- function(i,j) {newSigmaSq * exp(-1 * phi * abs(i - j))}
  33. Vphi <- outer(1:nrow(q), 1:nrow(q), covarianceFn)
  34. VphiInv <- solve(Vphi)
  35. C <- chol(VphiInv)
  36. q$oldDepDelay <- q$depDelay
  37. q$oldArrDelay <- q$arrDelay
  38. q$depDelay <- C %*% q$depDelay
  39. q$arrDelay <- C %*% q$arrDelay
  40.  
  41. glmORD.model <- lm(arrDelay ~ depDelay, data = q)
  42. plot(q$depDelay,q$arrDelay)
  43.  
  44. plot(q$aTime, resid(glmORD.model)^2)
  45.  
  46. coef(summary(newLmORD.model))[,1]
  47. coef(summary(glmORD.model))[,1]
  48. # differ a lot, but is it because glm is in squiggle space?
  49.  
  50. plot(q$oldDepDelay, q$oldArrDelay)
  51. glm.pred <- solve(C) %*% predict(glmORD.model, q, interval="predict")
  52. mean((q$arrDelay > glm.pred[,3]) | (q$arrDelay < glm.pred[,2]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement