« Импорт из excel
Оптимизация Хранилища »


Данные авиаперевозок

Олег Соловьев 7.08.2010

В США есть бюро по сбору данных на транспорте – Bureau of Transportation Statistics. Бюро не только собирает данные, но и предоставляет к ним доступ через свой сайт – BTS.gov. Например, SAS использует данные об авиаперевозках в своих учебных и рекламных материалах для демонстрации прогноза временных рядов.

Кол-во авиапассажиров в США

Этот ряд идеально подходит для демонстрации т.к. содержит сезонную составляющую – значения повторяются каждые 12 месяцев и тренд – “в среднем” на показанном участке ряд линейно возрастает. В этой статье мы рассмотрим как скачать этот набор данных с сайта BTS и загрузить его в SAS.

Сначала откройте сайт BTS.gov и выберите меню Data and Statistics → Airline Traffic Data или перейдите по этой ссылке. Внизу, в меню нужно выбрать пункты, как на рис. ниже и нажать кнопку Submit. В новом окне, вверху нажмите кнопку CSV. Далее появится меню с предложением сохранить файл.

Сайт BTS.gov

Откройте сохраненный CSV-файл и удалите первые строки с информацией о Бюро, а в первом столбце рядом со столбцом Total укажите название столбца – month. После этого в первой строке файла должны оказаться только названия столбцов Month и Total как на рис. ниже. Также удалите не нужный текст в конце таблицы. Далее сохраните файл в формате excel (xls). Это нужно, чтобы excel правильно преобразовал даты в столбце month, а SAS – правильно их распознал при импорте.

Вид данных в excel

Далее откройте SAS → File → Import Data → Next → Укажите путь к excel-файлу → Ok → Next → Укажите имя нового набора данных – AIR → Next → Укажите имя файла в котором будет сохранен код импорта файла → Finish. В итоге должен появиться набор данных work.air, а в указанном выше файле должен сохраниться следующий код:

PROC IMPORT OUT= WORK.Air
            DATAFILE= "C:Air_Traffic_CSV.xls"
            DBMS=EXCEL REPLACE;
     SHEET="Air_Traffic_CSV$";
     GETNAMES=YES;
     MIXED=NO;
     SCANTEXT=YES;
     USEDATE=YES;
     SCANTIME=YES;
RUN;

Чтобы сделать график, показанный в начале статьи, нужно изменить формат столбца month:

data air2;
  set air;
    format month monyy.;
run;

И воспользоваться процедурой GPLOT:

goptions device=ActiveX vsize=3 hsize=5.1;
symbol1 color=black interpol=join value=dot height=1;
proc gplot data = air2(where = (month between "01jan2002"d and "01jan2007"d));
  plot total*month / vaxis=40000 to 70000 by 10000;
run;
quit;

В последующих статьях мы используем этот набор для прогноза авиаперевозок.

Ваше мнение

Введите слово, если вы не спам-робот.



цены на окна пвх пластик и алюминий . переезд офиса компании и услуги грузчиков стоимость в Москве . погрузчик то 30 продажа. . .