/*-------------------------------------------------------------------*/ /* SAS System for Forecasting Time Series, Second Edition */ /* by John Brocklebank and David Dickey */ /* Copyright(c) 1986 by SAS Institute Inc., Cary, NC, USA */ /* SAS Publications order # 57275 */ /* ISBN 1-55544-027-4 */ /*-------------------------------------------------------------------*/ /* */ /* This material is provided "as is" by SAS Institute Inc. There */ /* are no warranties, expressed or implied, as to merchantability or */ /* fitness for a particular purpose regarding the materials or code */ /* contained herein. The Institute is not responsible for errors */ /* in this material as it now exists or will exist, nor does the */ /* Institute provide technical support for it. */ /* */ /*-------------------------------------------------------------------*/ /* Questions or problem reports concerning this material may be */ /* addressed to the author: */ /* */ /* SAS Institute Inc. */ /* Books by Users */ /* Attn: John Brocklebank and David Dickey */ /* SAS Campus Drive */ /* Cary, NC 27513 */ /* */ /* */ /* If you prefer, you can send email to: sasbbu@sas.com */ /* Use this for subject field: */ /* Comments for John Brocklebank and David Dickey */ /* */ /*-------------------------------------------------------------------*/ /* Date Last Updated: 06Oct00 */ /*-------------------------------------------------------------------*/ /* Use the DATA steps below with the appropriate PROC statements in */ /* Chapter 1, "Overview of Time Series," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 1.1- */ /* Output 1.2. */ DATA SALES; ONE: T+1; TITLE1 'PREDICTING SALES USING ADVERTISING'; TITLE2 'EXPENDITURES AND COMPETITORS'' SALES'; IF T>1 THEN GO TO TWO; E1=0; ADV1=150000; COMP1=2000000+500000*NORMAL(1137745)/SQRT(.51); TWO: E=300000*NORMAL(1137745); COMP=2000000 +.7*(COMP1-2000000) +500000*NORMAL(1137745); ADV=150000+NORMAL(1137745)*30000; SALES=3000000-.6*(COMP-2000000)+10*(ADV-ADV1)+E+.7*E1; OUTPUT; RETAIN; E1=E; ADV1=ADV; COMP1=COMP; IF T < 120 THEN GO TO ONE; DATA SALES; SET SALES(FIRSTOBS=41); T=_N_; DATE='01DEC77'D; DATE=INTNX('MONTH',DATE,_N_); FORMAT DATE MONYY5.; FORMAT SALES E7.; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 1, "Overview of Time Series," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 1.3- */ /* Output 1.4. */ DATA GAS; TITLE 'QUARTERLY GAS CONSUMPTION'; INPUT BILL @@; LIN=_N_; DATE=INTNX('QTR','30DEC71'D,LIN); QUAD=LIN*LIN; YR=YEAR(DATE); ST1=QTR(DATE)=1; ST2=QTR(DATE)=2; ST3=QTR(DATE)=3; QTR=QTR(DATE); FORMAT DATE YYQ4. YR 4.; CARDS; 344.39 246.63 131.53 288.87 313.45 189.76 179.1 221.1 246.84 209 51.21 133.89 277.01 197.98 50.68 218.08 365.1 207.51 54.63 214.09 267 230.28 230.32 426.41 467.06 306.03 253.23 279.46 336.56 196.67 152.15 319.67 440 315.04 216.42 339.78 434.66 399.66 330.8 539.78 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 1, "Overview of Time Series," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 1.5- */ /* Output 1.6. */ DATA GAS; SET GAS END=EOF; OUTPUT; IF EOF THEN DO I=1 TO 4; DATE=INTNX('QTR',DATE,1); ST1=QTR(DATE)=1; ST2=QTR(DATE)=2; ST3=QTR(DATE)=3; LIN+1; QUAD=LIN*LIN; BILL=.; OUTPUT; END; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 1, "Overview of Time Series," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 1.7- */ /* Output 1.9. */ DATA TBILLS; INPUT DATE :MONYY. LFYGM3 :15.12 @@; FORMAT DATE MONYY.; CARDS; JAN62 1.000631880308 FEB62 1.004301609197 MAR62 1.000631880308 APR62 1.004301609197 MAY62 0.985816794523 JUN62 1.004301609197 JUL62 1.071583616280 AUG62 1.036736884950 SEP62 1.022450927703 OCT62 1.007957920400 NOV62 1.040276711655 DEC62 1.054312029772 JAN63 1.068153081183 FEB63 1.071583616280 MAR63 1.061256502124 APR63 1.064710736992 MAY63 1.071583616280 JUN63 1.095273387403 JUL63 1.156881196792 AUG63 1.199964782928 SEP63 1.217875709495 OCT63 1.238374231043 NOV63 1.258460989610 DEC63 1.258460989610 JAN64 1.258460989610 FEB64 1.261297870945 MAR64 1.264126727146 APR64 1.244154593959 MAY64 1.247032293786 JUN64 1.247032293786 JUL64 1.241268589070 AUG64 1.252762968495 SEP64 1.261297870945 OCT64 1.272565595792 NOV64 1.291983681649 DEC64 1.345472366600 JAN65 1.337629189139 FEB65 1.368639425881 MAR65 1.368639425881 APR65 1.368639425881 MAY65 1.358409157630 JUN65 1.335001066732 JUL65 1.345472366600 AUG65 1.345472366600 SEP65 1.366091653802 OCT65 1.393766375959 NOV65 1.408544970055 DEC65 1.477048724388 JAN66 1.523880024072 FEB66 1.536867219599 MAR66 1.523880024072 APR66 1.530394705094 MAY66 1.534714366238 JUN66 1.504077396776 JUL66 1.568615917914 AUG66 1.601405740737 SEP66 1.680827908521 OCT66 1.677096560908 NOV66 1.671473303354 DEC66 1.601405740737 JAN67 1.551808799597 FEB67 1.517322623526 MAR67 1.449269160281 APR67 1.345472366600 MAY67 1.280933845462 JUN67 1.264126727146 JUL67 1.437462647694 AUG67 1.451613827241 SEP67 1.486139696090 OCT67 1.517322623526 NOV67 1.553925202504 DEC67 1.603419840109 JAN68 1.609437912434 FEB68 1.605429891037 MAR68 1.642872688520 APR68 1.682688374174 MAY68 1.733423892215 JUN68 1.708377860289 JUL68 1.669591835254 AUG68 1.627277830562 SEP68 1.646733697178 OCT68 1.677096560908 NOV68 1.695615608675 DEC68 1.785070481077 JAN69 1.814824742159 FEB69 1.811562096524 MAR69 1.795087259321 APR69 1.809926773184 MAY69 1.798404011947 JUN69 1.862528540116 JUL69 1.945910149055 AUG69 1.943048916774 SEP69 1.958685340544 OCT69 1.945910149055 NOV69 1.979621206398 DEC69 2.056684554557 JAN70 2.063058062429 FEB70 1.964311234426 MAR70 1.891604804198 APR70 1.873339456220 MAY70 1.922787731634 JUN70 1.899117987549 JUL70 1.864080130808 AUG70 1.857859270933 SEP70 1.813194749948 OCT70 1.776645831418 NOV70 1.663926097718 DEC70 1.583093937094 JAN71 1.490654376444 FEB71 1.308332819650 MAR71 1.217875709495 APR71 1.350667183477 MAY71 1.420695787837 JUN71 1.558144618047 JUL71 1.686398953570 AUG71 1.597365331200 SEP71 1.545432582458 OCT71 1.495148766032 NOV71 1.439835128048 DEC71 1.388791241318 JAN72 1.217875709495 FEB72 1.163150809806 MAR72 1.316408233656 APR72 1.311031876619 MAY72 1.305626458052 JUN72 1.363537373997 JUL72 1.381281819296 AUG72 1.391281902631 SEP72 1.539015448138 OCT72 1.556037135707 NOV72 1.564440546503 DEC72 1.623340817603 JAN73 1.688249092858 FEB73 1.722766597741 MAR73 1.806648081722 APR73 1.834180185112 MAY73 1.850028377352 JUN73 1.972691171733 JUL73 2.080690761080 AUG73 2.159868790792 SEP73 2.115049969147 OCT73 1.976854952905 NOV73 2.057962510003 DEC73 2.008214032391 JAN74 2.050270164380 FEB74 1.962907725424 MAR74 2.074428999856 APR74 2.119863456179 MAY74 2.107786014689 JUN74 2.066862759473 JUL74 2.021547563261 AUG74 2.192770226987 SEP74 2.086913556519 OCT74 2.009555414216 NOV74 2.010894999145 DEC74 1.967112356706 JAN75 1.834180185112 FEB75 1.704748092238 MAR75 1.702928255521 APR75 1.724550719535 MAY75 1.654411278077 JUN75 1.675225652972 JUL75 1.813194749948 AUG75 1.862528540116 SEP75 1.859418117702 OCT75 1.785070481077 NOV75 1.701105100960 DEC75 1.693779060868 JAN76 1.583093937094 FEB76 1.585145219865 MAR76 1.609437912434 APR76 1.581038437912 MAY76 1.648658625587 JUN76 1.688249092858 JUL76 1.654411278077 AUG76 1.637053079467 SEP76 1.625311261590 OCT76 1.593308530504 NOV76 1.558144618047 DEC76 1.470175845101 JAN77 1.530394705094 FEB77 1.541159071681 MAR77 1.526056303495 APR77 1.512927012053 MAY77 1.601405740737 JUN77 1.613429933704 JUL77 1.646733697178 AUG77 1.702928255521 SEP77 1.759580570864 OCT77 1.818076777545 NOV77 1.808288771179 DEC77 1.803358605071 JAN78 1.862528540116 FEB78 1.864080130808 MAR78 1.838961070712 APR78 1.838961070712 MAY78 1.857859270933 JUN78 1.906575143657 JUL78 1.947337701046 AUG78 1.957273907706 SEP78 2.060513531794 OCT78 2.078190759778 NOV78 2.156402582816 DEC78 2.206074192613 JAN79 2.235376343301 FEB79 2.232162628697 MAR79 2.249184316267 APR79 2.247072383064 MAY79 2.262804222982 JUN79 2.203869120055 JUL79 2.223541885654 AUG79 2.253394848803 SEP79 2.328252839743 OCT79 2.459588841804 NOV79 2.467251714549 DEC79 2.488234439881 JAN80 2.484906649788 FEB80 2.554121718809 MAR80 2.721295427852 APR80 2.580216829592 MAY80 2.149433913500 JUN80 1.955860479908 JUL80 2.086913556519 AUG80 2.211565694607 SEP80 2.329227023940 OCT80 2.452727751424 NOV80 2.619583219780 DEC80 2.740194654429 JAN81 2.709382646336 FEB81 2.693951276723 MAR81 2.592265168108 APR81 2.616665639300 MAY81 2.791165107813 JUN81 2.689886230475 JUL81 2.704711299837 AUG81 2.741484977188 SEP81 2.687847493785 OCT81 2.605648267484 NOV81 2.385086314506 DEC81 2.384165079986 JAN82 2.507971922719 FEB82 2.601207105484 MAR82 2.540025949009 APR82 2.541601993465 MAY82 2.492378664627 JUN82 2.523325759692 JUL82 2.429217743927 AUG82 2.161021528672 SEP82 2.069391205826 OCT82 2.042518187575 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 1, "Overview of Time Series," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 1.10. */ DATA TBILLS2; SET TBILLS END=EOF; TIME+1; OUTPUT; IF EOF THEN DO I=1 TO 24; LFYGM3=.; TIME+1; DATE=INTNX('MONTH',DATE,1); FORMAT DATE MONYY5.; OUTPUT; END; DATA TBILLS2; SET TBILLS2 (FIRSTOBS=251); DROP I; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 2, "Simple Models: Autoregression," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 2.1. */ DATA EXAMPLE; ONE:T+1; IF T=1 THEN Y=100+NORMAL(1234567)/SQRT(.36); IF T=1 THEN Y=100+20*NORMAL(1234567)/SQRT(.36); Y=100+.8*(Y-100)+20*NORMAL(1234567); OUTPUT; RETAIN; IF T<200 THEN GO TO ONE; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 2, "Simple Models: Autoregression," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 2.2- */ /* Output 2.3. */ DATA SILVER; TITLE 'MONTH END STOCKS OF SILVER'; INPUT SILVER @@; T=_N_; RETAIN DATE '01DEC76'D LSILVER1-LSILVER4; DATE=INTNX('MONTH',DATE,1); FORMAT DATE MONYY.; OUTPUT; LSILVER4=LSILVER3; LSILVER3=LSILVER2; LSILVER2=LSILVER1; LSILVER1=SILVER; CARDS; 846 827 799 768 719 652 580 546 500 493 530 548 565 572 632 645 674 693 706 661 648 604 647 684 700 723 741 734 708 728 737 729 678 651 627 582 521 519 496 501 555 541 485 476 515 606 694 788 761 794 836 846 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 3, "The General ARIMA Model," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 3.1- */ /* Output 3.5 and Output 3.10. */ DATA EX; FORMAT T YAR1 YMA1 Y1-Y8 7.2; DO T=-25 TO 150; YAR1L=YAR1; Y1L1=Y1; Y2L1=Y2; Y3L2=Y3L1; Y3L1=Y3; Y4L2=Y4L1; Y4L1=Y4; Y8L1=Y8; EL2=EL1; EL1=E; E=NORMAL(1234567); YAR1=SUM(100,.8*YAR1L,-80,E); YMA1=SUM(100,E,.8*EL1); Y1=SUM(.8*Y1L1,E); Y2=SUM(-.8*Y2L1,E); Y3=SUM(.3*Y3L1,.4*Y3L2,E); Y4=SUM(.7*Y4L1,-.49*Y4L2,E); Y5=SUM(E,+.8*EL1); Y6=SUM(E,-.3*EL1,-.4*EL2); Y7=E; Y8=SUM(.6*Y8L1,E,.4*EL1); OUTPUT; END; DATA EX; SET EX; IF T>0; DATA EX; SET EX; KEEP T YAR1 YMA1 Y1-Y8; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 3, "The General ARIMA Model," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 3.6- */ /* Output 3.9. */ DATA STEEL; INPUT EXPORT @@; TITLE 'IRON AND STEEL EXPORTS EXCLUDING SCRAPS'; TITLE2 'WEIGHT IN MILLION TONS'; TITLE3 '1937-1980'; RETAIN YEAR 1936; YEAR+1; CARDS; 3.89 2.41 2.8 8.72 7.12 7.24 7.15 6.05 5.21 5.03 6.88 4.7 5.06 3.16 3.62 4.55 2.43 3.16 4.55 5.17 6.95 3.46 2.13 3.47 2.79 2.52 2.8 4.04 3.08 2.28 2.17 2.78 5.94 8.14 3.55 3.61 5.06 7.13 4.15 3.86 3.22 3.5 3.76 5.11 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 3, "The General ARIMA Model," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 3.11- */ /* Output 3.13. */ TITLE 'SERIES B'; TITLE2 'IBM DAILY STOCK PRICES 17MAY61 TO 2NOV62'; DATA IBM; INPUT PRICE @@; RETAIN; T=_N_; CARDS; 460 457 452 459 462 459 463 479 493 490 492 498 499 497 496 490 489 478 487 491 487 482 479 478 479 477 479 475 479 476 476 478 479 477 476 475 475 473 474 474 474 465 466 467 471 471 467 473 481 488 490 489 489 485 491 492 494 499 498 500 497 494 495 500 504 513 511 514 510 509 515 519 523 519 523 531 547 551 547 541 545 549 545 549 547 543 540 539 532 517 527 540 542 538 541 541 547 553 559 557 557 560 571 571 569 575 580 584 585 590 599 603 599 596 585 587 585 581 583 592 592 596 596 595 598 598 595 595 592 588 582 576 578 589 585 580 579 584 581 581 577 577 578 580 586 583 581 576 571 575 575 573 577 582 584 579 572 577 571 560 549 556 557 563 564 567 561 559 553 553 553 547 550 544 541 532 525 542 555 558 551 551 552 553 557 557 548 547 545 545 539 539 535 537 535 536 537 543 548 546 547 548 549 553 553 552 551 550 553 554 551 551 545 547 547 537 539 538 533 525 513 510 521 521 521 523 516 511 518 517 520 519 519 519 518 513 499 485 454 462 473 482 486 475 459 451 453 446 455 452 457 449 450 435 415 398 399 361 383 393 385 360 364 365 370 374 359 335 323 306 333 330 336 328 316 320 332 320 333 344 339 350 351 350 345 350 359 375 379 376 382 370 365 367 372 373 363 371 369 376 387 387 376 385 385 380 373 382 377 376 379 386 387 386 389 394 393 409 411 409 408 393 391 388 396 387 383 388 382 384 382 383 383 388 395 392 386 383 377 364 369 355 350 353 340 350 349 358 360 360 366 359 356 355 367 357 361 355 348 343 330 340 339 331 345 352 346 352 357 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 3, "The General ARIMA Model," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 3.14. */ DATA SILVER; INPUT SILVER @@; TITLE 'MONTH END STOCKS OF SILVER'; T=_N_; RETAIN DATE '01DEC76'D LSILVER1-LSILVER4; DATE=INTNX('MONTH',DATE,1); FORMAT DATE MONYY.; OUTPUT; LSILVER4=LSILVER3; LSILVER3=LSILVER2; LSILVER2=LSILVER1; LSILVER1=SILVER; CARDS; 846 827 799 768 719 652 580 546 500 493 530 548 565 572 632 645 674 693 706 661 648 604 647 684 700 723 741 734 708 728 737 729 678 651 627 582 521 519 496 501 555 541 485 476 515 606 694 788 761 794 836 846 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 3, "The General ARIMA Model," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 3.16. */ DATA WORKERS; INPUT NONPUB @@; TITLE 'PUBLISHING AND PRINTING NONPRODUCTION WORKERS'; TITLE2 '1944-1977'; RETAIN YEAR 1943; YEAR+1; CARDS; 33.5 34. 33.5 32.5 33.2 34.1 34 34.3 34.6 35 35.5 35.4 35.1 35.2 35.5 35.3 35.4 35.5 36.6 36.7 36.6 36.4 36.9 37.4 37.7 38.5 39.1 39.7 40.6 42.4 43.2 43.4 43.7 43.5 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 4, "The ARIMA Model: Special Applications," of the SAS */ /* SYSTEM FOR FORECASTING TIME SERIES, 1986 EDITION, to produce */ /* Output 4.1-Output 4.3. */ DATA CONST; INPUT ELECTRIC DATE :DATE7. MASONRY CARPENT ROOFERS PAPER HEATING; CONSTRCT=MASONRY+ELECTRIC; FORMAT DATE MONYY5.; CARDS; 241.9 1JAN77 196.6 77.9 77.0 84.5 318.4 239.3 1FEB77 216.3 78.7 85.7 83.0 318.1 245.5 1MAR77 235.1 82.4 94.7 88.7 326.5 249.6 1APR77 252.2 87.9 102.8 96.4 337.8 255.7 1MAY77 261.5 92.7 107.8 103.3 348.4 262.8 1JUN77 278.0 99.5 111.0 111.9 359.7 268.1 1JUL77 280.8 103.1 115.6 116.8 370.5 276.1 1AUG77 290.5 106.5 116.4 120.6 374.6 277.1 1SEP77 287.4 103.9 117.7 115.5 374.7 278.6 1OCT77 288.7 105.8 122.4 114.3 376.7 276.2 1NOV77 286.2 102.8 123.5 112.1 377.1 274.6 1DEC77 276.7 101.3 112.5 104.3 376.2 262.1 1JAN78 234.3 91.4 93.1 89.6 361.0 256.2 1FEB78 237.4 84.8 94.2 87.8 350.9 259.9 1MAR78 270.6 93.9 109.7 94.7 362.3 263.6 1APR78 292.7 98.6 126.1 106.5 375.7 278.0 1MAY78 295.5 103.8 128.7 113.5 384.0 289.5 1JUN78 308.3 113.0 135.5 126.6 399.2 296.6 1JUL78 306.9 115.6 140.3 133.3 413.0 305.1 1AUG78 315.3 115.1 141.3 135.4 423.7 307.8 1SEP78 310.6 110.5 139.2 129.1 423.4 308.2 1OCT78 316.3 110.4 142.0 130.5 425.7 310.1 1NOV78 310.5 107.3 136.7 127.4 423.1 307.6 1DEC78 304.4 105.2 127.7 118.7 420.6 298.2 1JAN79 263.7 97.7 103.4 101.6 396.9 292.1 1FEB79 259.8 96.3 98.4 100.4 388.5 294.5 1MAR79 303.5 102.0 124.1 104.0 395.0 296.9 1APR79 307.2 98.9 128.9 112.8 398.3 303.3 1MAY79 316.8 101.3 133.5 124.1 407.3 312.1 1JUN79 325.4 103.2 139.2 134.1 416.8 322.8 1JUL79 328.6 107.4 144.0 143.3 425.3 327.7 1AUG79 335.2 107.2 145.9 145.1 430.9 327.0 1SEP79 327.9 106.2 145.6 137.9 426.9 330.4 1OCT79 334.5 105.5 146.3 136.4 426.7 329.7 1NOV79 328.7 100.4 144.9 129.5 424.2 329.5 1DEC79 321.5 101.5 141.1 121.5 421.9 320.3 1JAN80 293.8 91.6 119.8 106.8 409.8 315.7 1FEB80 285.8 89.7 114.6 104.7 398.8 312.6 1MAR80 292.0 88.6 119.0 104.1 394.6 306.5 1APR80 299.3 86.4 133.9 114.8 388.3 308.6 1MAY80 301.7 88.6 135.7 122.9 390.3 316.3 1JUN80 307.9 80.0 138.1 128.7 396.7 319.5 1JUL80 310.7 93.0 140.1 131.8 395.9 326.4 1AUG80 314.9 96.9 142.9 130.1 405.1 330.8 1SEP80 312.7 95.8 142.9 126.1 407.9 329.3 1OCT80 318.5 96.3 144.7 126.8 410.5 330.6 1NOV80 307.7 94.2 144.2 119.2 406.9 327.2 1DEC80 296.2 93.0 132.6 110.0 399.6 316.2 1JAN81 259.2 84.8 107.4 93.2 388.2 310.1 1FEB81 258.8 80.9 102.0 90.7 379.8 308.5 1MAR81 271.5 84.0 122 94.2 378.8 311.1 1APR81 281.0 92.0 120.4 105.1 382.2 313.6 1MAY81 283.7 95.4 122.1 112.2 379.4 318.3 1JUN81 289.3 95.7 129.2 120.8 389.0 321.3 1JUL81 291.1 95.7 132.6 126.2 393.7 327.4 1AUG81 295.9 96.7 135.7 126.1 397.1 326.7 1SEP81 292.7 92.4 135.4 122.3 393.2 326.4 1OCT81 282.6 88.9 136.4 118.5 393.7 322.5 1NOV81 275.5 84.9 135.9 113.7 387.1 318.6 1DEC81 260.2 80.5 125.2 104.2 379.7 301.9 1JAN82 214.3 70.9 95.8 89.2 363.2 296.1 1FEB82 224.8 71.3 96.0 86.9 354.4 298.3 1MAR82 228.7 73.4 101.6 90.2 350.6 297.7 1APR82 244.7 76.3 115.0 100.4 351.5 303.5 1MAY82 260.4 83.3 120.2 112.2 358.5 305.0 1JUN82 262.2 85.9 125.3 117.2 362.1 307.6 1JUL82 270.4 85.8 129.4 123.1 367.2 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 4, "The ARIMA Model: Special Applications," of the SAS */ /* SYSTEM FOR FORECASTING TIME SERIES, 1986 EDITION, to produce */ /* Output 4.4-Output 4.7. */ DATA AIRLINE; INPUT AIR @@; LAIR=LOG(AIR); TITLE 'SERIES G'; TITLE2 'INTERNATIONAL AIRLINES PASSENGERS'; YEAR=INT((_N_-1)/12)+1949; MONTH=MOD(_N_-1,12)+1; DATE=MDY(MONTH,1,YEAR); FORMAT DATE MONYY5.; CARDS; 112 118 132 129 121 135 148 148 136 119 104 118 115 126 141 135 125 149 170 170 158 133 114 140 145 150 178 163 172 178 199 199 184 162 146 166 171 180 193 181 183 218 230 242 209 191 172 194 196 196 236 235 229 243 264 272 237 211 180 201 204 188 235 227 234 264 302 293 259 229 203 229 242 233 267 269 270 315 364 347 312 274 237 278 284 277 317 313 318 374 413 405 355 306 271 306 315 301 356 348 355 422 465 467 404 347 305 336 340 318 362 348 363 435 491 505 404 359 310 337 360 342 406 396 420 472 548 559 463 407 362 405 417 391 419 461 472 535 622 606 508 461 390 432 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 4, "The ARIMA Model: Special Applications," of the SAS */ /* SYSTEM FOR FORECASTING TIME SERIES, 1986 EDITION, to produce */ /* Output 4.8a, b, c, d, and 4.12. */ DATA HOUSING; INPUT DATE YYQ4. DPIC STARTS MORT; LABEL DPIC='DIS PERS INCOME' STARTS='HOUSING STARTS' MORT='MORTGAGE RATES' SALES='SALES'; FORMAT DATE YYQ4.; T=_N_; E=NORMAL(72766133); EAR=-.35*EAR1+E-.25*E1; IF T=1 THEN EAR=2*NORMAL(72766133); NSERR=NSERR+EAR; IF T=1 THEN NSERR=EAR; DSTART=STARTS-START1; DMORT=MORT-MORT1; DINC=DPIC-DPIC1; DSALES=5*DSTART-250*DMORT+3*DINC+300*EAR; SALES=SALES+DSALES; IF T=1 THEN SALES=17000; IF T=41 THEN SALES=19950.3; OUTPUT; RETAIN; DPIC1=DPIC; START1=STARTS; MORT1=MORT; EAR1=EAR; E1=E; CARDS; 74Q1 949.5 1628 8.59 74Q2 973.1 1527 8.75 74Q3 999.7 1209 9.08 74Q4 1016.2 1001 9.27 75Q1 1025.4 995 9.17 75Q2 1092.2 1050 8.94 75Q3 1095.7 1258 8.91 75Q4 1124.1 1365 9.01 76Q1 1153.3 1400 8.95 76Q2 1174.1 1428 8.93 76Q3 1193.3 1570 9.02 76Q4 1222.6 1770 9.07 77Q1 1248.0 1756 9.00 77Q2 1285.3 1937 8.96 77Q3 1319.1 2041 9.02 77Q4 1359.6 2146 9.08 78Q1 1398.0 1721 9.20 78Q2 1440.7 2104 9.38 78Q3 1482.1 2044 9.67 78Q4 1531.0 2078 9.91 79Q1 1580.2 1615 10.23 79Q2 1612.8 1815 10.58 79Q3 1663.8 1809 11.05 79Q4 1710.1 1593 11.51 80Q1 1765.1 1263 12.37 80Q2 1784.1 1053 13.53 80Q3 1840.6 1412 12.41 80Q4 1897.0 1535 14.23 81Q1 1947.3 1391 14.56 81Q2 1985.6 1170 15.50 81Q3 2042.0 966 18.00 81Q4 2086.4 903 17.00 82Q1 2115.3 919 17.55 82Q2 2148.9 909 16.37 82Q3 2229.2 1063 16.88 82Q4 2279.6 1239 15.94 83Q1 2323.6 1314 15.76 83Q2 2366.2 1388 15.38 83Q3 2449.8 1377 14.99 83Q4 2497.7 1366 14.78 84Q1 2535.8 1366 15.01 ; /* Use the DATA steps below with the appropriate PROC statements in */ /* Chapter 4, "The ARIMA Model: Special Applications," of the SAS */ /* SYSTEM FOR FORECASTING TIME SERIES, 1986 EDITION, to produce */ /* Output 4.11. */ DATA END; INPUT DATE YYQ4. STARTS; CARDS; 84Q2 1373.2418 84Q3 1387.6686 84Q4 1369.1916 85Q1 1369.1916 85Q2 1371.2554 85Q3 1375.3670 85Q4 1370.1011 86Q1 1370.1011 ; DATA COMB; SET HOUSING END; TITLE 'DATA WITH FORECASTS OF STARTS APPENDED AND SALES=.'; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 4, "The ARIMA Model: Special Applications," of the SAS */ /* SYSTEM FOR FORECASTING TIME SERIES, 1986 EDITION, to produce */ /* Output 4.14-Output 4.16. */ DATA A; ONE:T+1;YR=.8*YR1+3*XR2-1.2*XR3+NORMAL(1234567); IF YR=. THEN YR=0; XR=.5*XR1+NORMAL(1234567); IF XR=. THEN XR=0; X=XR+5; Y=YR+10; OUTPUT; XR3=XR2;XR2=XR1;XR1=XR; YR1=YR; IF T<600 THEN GO TO ONE; DATA A2; SET A; IF T>100; DATA TRANSFER; SET A2; T=T-100; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 4, "The ARIMA Model: Special Applications," of the SAS */ /* SYSTEM FOR FORECASTING TIME SERIES, 1986 EDITION, to produce */ /* Output 4.17-Output 4.19. */ DATA RIVER; TITLE 'FLOW RATES OF NEUSE RIVER AT GOLDSBORO AND KINSTON'; RETAIN DATE '30SEP70'D; INPUT GOLD KINS; LGOLD=LOG(GOLD); LKINS=LOG(KINS); DATE=INTNX('DAY',DATE,1); FORMAT DATE DATE7.; CARDS; 525 548 616 615 361 716 298 555 298 433 160 415 153 342 182 271 212 280 262 295 160 349 184 289 143 286 190 265 156 280 146 280 138 286 187 271 361 262 271 373 316 433 382 471 416 583 539 653 556 643 429 709 475 646 464 594 367 622 271 562 528 534 493 759 1030 875 1460 1050 1330 1480 1100 1540 895 1390 753 1190 620 1020 592 864 606 777 620 852 810 1000 1520 1140 1810 1520 1880 1880 2060 1990 2250 2100 1770 2250 1810 2090 1350 1950 1110 1720 1010 1410 912 1260 808 1160 765 1060 736 997 701 952 696 919 689 887 605 871 591 811 702 751 619 826 563 821 613 738 612 752 ; 593 768 573 751 562 738 539 723 509 704 523 676 574 655 512 687 488 682 640 652 962 878 1150 1240 1710 1360 1770 1670 1600 1880 1390 1830 1400 1690 1540 1710 1790 1800 2050 1910 2120 2100 1890 2230 1700 2160 1360 1940 1210 1700 1130 1550 1110 1450 1190 1380 1350 1410 1490 1520 1730 1640 2770 1830 3500 2620 4000 3080 4400 3610 4900 4110 5420 4560 5480 5000 5130 5380 4560 5820 3870 5990 3230 5800 2750 5230 2470 4490 2200 3790 1980 3210 1800 2760 1690 2460 1900 2310 2540 2580 3130 3040 3560 3420 3670 3780 3370 4040 2880 4150 2750 4220 2820 4140 3130 4050 3320 3970 3250 4050 3300 4160 3740 4270 4660 4430 5560 4740 6480 5310 7200 5950 7870 6480 8630 7000 9510 7830 10300 8670 10700 9350 10600 10100 10300 10700 9770 11000 8970 11100 7570 10800 5990 10200 4290 9380 4630 8450 5540 7460 6440 6860 7040 6670 7070 6860 6070 7200 4750 7460 4230 7390 5560 7370 7790 8220 8410 9170 9400 9300 10400 9510 11400 10000 12200 10700 12300 11500 11800 12400 10700 12900 8570 13000 6260 12500 4080 11300 3500 9070 3410 7010 3530 5530 3560 4930 3280 5620 2810 4280 2520 3940 2350 3480 2230 3090 2040 2850 2080 2710 2470 2760 2940 2980 3300 3240 3900 3560 4510 3920 4930 4320 5190 4770 5360 5200 5080 5560 3930 5770 4450 5980 5280 5950 6020 6110 6580 6390 6880 6670 6930 6940 6850 7130 6640 7250 5700 7260 3930 7140 2700 6790 2350 5530 2060 4160 1840 3160 1690 2660 1560 2260 1600 2060 1630 1990 1620 2020 1670 2010 1620 1990 1530 1970 1700 1980 2030 2220 2670 2390 3070 2660 3040 3000 2630 3230 2130 3190 1850 2830 1600 2350 1360 2000 1240 1730 1180 1540 1100 1440 1110 1350 0999 1310 1120 1300 1220 1460 2160 1560 2760 2210 3020 2750 3550 3070 3910 3330 4110 3620 4280 4100 4240 4430 3620 4450 1900 4370 1370 3520 1180 2110 1030 1520 902 1310 874 1410 1070 1270 1910 1270 2580 1760 3000 2280 3170 2700 3350 2940 2880 3110 1490 3180 1020 2320 846 1360 782 1060 711 946 525 872 630 732 753 764 634 856 634 804 651 753 623 773 623 763 641 757 683 756 634 779 578 766 606 844 571 975 588 826 585 758 634 747 585 762 477 729 407 649 394 580 519 561 842 675 606 972 560 821 439 722 616 680 749 897 854 1030 918 999 854 1110 1030 1080 1190 1140 942 1260 627 1160 532 855 442 708 400 627 314 552 362 506 445 524 455 588 690 596 752 690 602 825 458 768 388 722 506 688 602 699 1350 720 1480 1250 1370 1550 1140 1580 914 1410 814 1170 763 987 588 921 850 784 1090 828 926 1080 606 1050 529 830 483 670 423 625 350 574 347 511 445 535 543 718 602 995 609 1090 806 954 874 968 763 1060 676 997 496 920 648 773 858 779 958 1030 822 1330 954 1360 1040 1300 1430 1300 1520 1480 1000 1670 641 1370 557 998 435 807 338 715 296 603 376 553 474 570 423 654 359 672 376 703 407 939 439 926 1620 728 2310 1340 2590 2030 2370 2420 1090 2480 651 1660 451 1060 496 883 464 697 557 648 539 634 529 658 416 641 376 578 362 504 567 655 790 1840 906 2360 2400 2680 3470 3080 4040 3580 4420 3990 4490 4350 4420 4560 4400 4700 4630 4890 4920 5130 5110 5470 5240 5680 5180 5710 5060 5710 5040 5660 5020 5600 4820 5530 3420 5440 2070 5240 1650 4250 1530 3410 2330 3740 3470 4440 4600 5130 5330 5380 6140 5630 6870 5990 7470 6420 7830 6860 7890 7330 7720 7780 7580 8100 7630 8320 7580 8280 ; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 4, "The ARIMA Model: Special Applications," of the SAS */ /* SYSTEM FOR FORECASTING TIME SERIES, 1986 EDITION, to produce */ /* Output 4.22a-Output 4.22b. */ DATA INTER; ONE: T+1; XI=(T>19); IF T=1 THEN ERR1=1.4*NORMAL(1234567); ERR=.7*ERR1+NORMAL(1234567); Y=15-10*XI+ERR; Y=FLOOR(100*Y+.5)/100; OUTPUT; RETAIN; ERR1=ERR; IF T<80 THEN GO TO ONE; TITLE 'TURNAROUND TIMES'; /* Use the DATA steps below with the appropriate PROC statements in */ /* Chapter 5, "State Space Modeling," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 5.1- */ /* Output 5.2. */ DATA TEST; ONE:T+1; E=NORMAL(1234567); GROUP=3; IF T<152 THEN GROUP=2; IF T< 52 THEN GROUP=1; Y=E+.8*E1; OUTPUT; E1=E; IF T<751 THEN GO TO ONE; DATA TEST; SET TEST; IF GROUP=2; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 5, "State Space Modeling," of the SAS SYSTEM FOR */ /* FORECASTING TIME SERIES, 1986 EDITION, to produce Output 5.3- */ /* Output 5.4. */ DATA MINKMUSK; INPUT YEAR MINK MUSKRAT @@; FORMAT MINK MUSKRAT COMMA10.; LMINK=LOG(MINK); LMUSKRAT=LOG(MUSKRAT); T=_N_; TITLE 'HUDSON''S BAY FUR TRAPPING RECORDS 1842-1890'; CARDS; 1842 17780 549577 1843 25382 543155 1844 24855 265177 1845 32031 295617 1846 53264 303172 1847 36621 248710 1848 37123 224347 1849 35712 179075 1850 24772 192261 1851 17827 291281 1852 27413 488238 1853 39686 527161 1854 49373 319444 1855 58628 260805 1856 54924 295847 1857 65522 311953 1858 73066 243862 1859 55720 206156 1860 32548 205471 1861 38306 330527 1862 45534 356789 1863 59599 429304 1864 63724 367302 1865 49349 424875 1866 52113 312543 1867 73752 610280 1868 81769 469775 1869 35081 272963 1870 28184 436509 1871 35660 590916 1872 44352 711174 1873 55496 659159 1874 63810 474942 1875 83319 626711 1876 79206 583319 1877 90080 464297 1878 63318 511993 1879 36360 519963 1880 38828 830100 1881 40834 1028187 1882 56882 1081489 1883 52258 1082999 1884 110610 817003 1885 76393 347050 1886 64215 380022 1887 82941 344818 1888 43641 223615 1889 35400 322360 1890 29363 574742 ; /* Use the DATA steps below with the appropriate PROC statements in */ /* Chapter 6, "Spectral Analysis," of the SAS SYSTEM FOR FORECASTING */ /* TIME SERIES, 1986 EDITION, to produce Output 6.1-Output 6.6, */ /* Output 6.9, and Output 6.12. */ DATA HEATER; ONE: T+1; CYCLE=4*SIN(2*3.1415927*t/7+.3); Y=40+CYCLE+10*NORMAL(9283761); OUTPUT; RETAIN; LABEL Y='WATER USAGE' T='TIME PERIOD'; IF T<56 THEN GO TO ONE; TITLE 'HOUSEHOLD WATER USAGE'; DATA HEATER; SET HEATER; SIN=SIN(2*3.1415927*T/7); COS=COS(2*3.1415927*T/7); /* Use the DATA steps below with the appropriate PROC statements in */ /* Chapter 6, "Spectral Analysis," of the SAS SYSTEM FOR FORECASTING */ /* TIME SERIES, 1986 EDITION, to produce Output 6.7-Output 6.8 and */ /* Output 6.10. */ DATA C; ONE:T+1;PI=3.1415927; Y3=COS(PI*T/6)+SIN(PI*T/6)+2*NORMAL(1234567); Y4=RANNOR(3333333); Y6=(T-14*FLOOR((T-1)/14)<7)-(T-14*FLOOR((T-1)/14)>6); Y1=.7*Y11+NORMAL(1234567); Y2=-.7*Y21+NORMAL(1234567); IF T=1 THEN Y1=NORMAL(1234567)/SQRT(.51); IF T=1 THEN Y2=Y1; OUTPUT; Y11=Y1;Y21=Y2; IF T<99 THEN GO TO ONE; DATA SERIES; SET C; IF T=1 THEN DO; Y51=0;Y52=0;Y53=0;Y54=0;Y55=0;Y56=0; END; Y5=.7*Y56+NORMAL(1234567); Y56=Y55;Y55=Y54;Y54=Y53;Y53=Y52;Y52=Y51; Y51=Y5;RETAIN; KEEP Y1-Y6; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 6, "Spectral Analysis," of the SAS SYSTEM FOR FORECASTING */ /* TIME SERIES, 1986 EDITION, to produce Output 6.11. */ DATA A; ONE:TT+1; T=TT-1; OMEGA=2*3.1415927/12; Y=COS(OMEGA*T+.2); OUTPUT; IF T<11 THEN GO TO ONE; TITLE 'ORIGINAL VALUES'; /* Use the DATA step below with the appropriate PROC statements in */ /* Chapter 6, "Spectral Analysis," of the SAS SYSTEM FOR FORECASTING */ /* TIME SERIES, 1986 EDITION, to produce Output 6.13. */ DATA A; ONE:T+1; IF T=1 THEN X1=0; IF T=1 THEN Y1=0; X=.5*X1+NORMAL(1234567); Y=.8*Y1+X; TEMP=Y+NORMAL(1234567); OUTPUT; X1=X; Y1=Y; IF T<512 THEN GO TO ONE;