Учебники

SAS — Методы ввода

Методы ввода используются для чтения необработанных данных. Необработанные данные могут быть из внешнего источника или из потоковых данных. Оператор ввода создает переменную с именем, которое вы назначаете каждому полю. Таким образом, вы должны создать переменную в операторе ввода. Эта же переменная будет показана в выходных данных набора данных SAS. Ниже приведены различные методы ввода, доступные в SAS.

  • Метод ввода списка
  • Именованный метод ввода
  • Метод ввода столбца
  • Форматированный метод ввода

Детали каждого метода ввода описаны ниже.

Метод ввода списка

В этом методе переменные перечислены с типами данных. Необработанные данные тщательно анализируются, чтобы порядок объявленных переменных соответствовал данным. Разделитель (обычно пробел) должен быть одинаковым между любой парой соседних столбцов. Любые недостающие данные вызовут проблемы в выводе, поскольку результат будет неправильным.

пример

Следующий код и выходные данные показывают использование метода ввода списка.

DATA TEMP;
INPUT   EMPID ENAME $ DEPT $ ;
DATALINES;
1 Rick  IT
2 Dan  OPS
3 Tusar  IT
4 Pranab  OPS
5 Rasmi  FIN
;
PROC PRINT DATA = TEMP;
RUN;

Запустив код bove, мы получим следующий вывод.

list_n_named_input

Именованный метод ввода

В этом методе переменные перечислены с типами данных. Необработанные данные модифицируются, чтобы имена переменных объявлялись перед соответствующими данными. Разделитель (обычно пробел) должен быть одинаковым между любой парой соседних столбцов.

пример

Следующий код и выходные данные показывают использование именованного метода ввода.

DATA TEMP;
INPUT   
EMPID= ENAME= $ DEPT= $ ;
DATALINES;
EMPID = 1 ENAME = Rick  DEPT = IT
EMPID = 2 ENAME = Dan  DEPT = OPS
EMPID = 3 ENAME = Tusar  DEPT = IT
EMPID = 4 ENAME = Pranab  DEPT = OPS
EMPID = 5 ENAME = Rasmi  DEPT = FIN
;
PROC PRINT DATA = TEMP;
RUN;

Запустив код bove, мы получим следующий вывод.

list_n_named_input

Метод ввода столбца

В этом методе переменные перечисляются с типами данных и шириной столбцов, которые определяют значение одного столбца данных. Например, если имя сотрудника содержит максимум 9 символов, а имя каждого сотрудника начинается с 10-го столбца, то ширина столбца для переменной имени сотрудника будет 10-19.

пример

Следующий код показывает использование метода ввода столбцов.

DATA TEMP;
INPUT   EMPID 1-3 ENAME $ 4-12 DEPT $ 13-16;
DATALINES;
14 Rick     IT 
241Dan      OPS 
30 Sanvi    IT 
410Chanchal OPS 
52 Piyu     FIN 
;
PROC PRINT DATA = TEMP;
RUN;

Когда мы выполняем приведенный выше код, он дает следующий результат —

column_n_formatted_input

Форматированный метод ввода

В этом методе переменные считываются из фиксированной начальной точки, пока не встретится пробел. Поскольку каждая переменная имеет фиксированную начальную точку, число столбцов между любой парой переменных становится шириной первой переменной. Символ ‘@n’ используется для указания начальной позиции столбца переменной в качестве n-го столбца.

пример

Следующий код показывает использование форматированного метода ввода

DATA TEMP;
INPUT   @1 EMPID $ @4 ENAME $ @13 DEPT $ ;
DATALINES;
14 Rick     IT 
241 Dan      OPS 
30 Sanvi    IT 
410 Chanchal OPS 
52 Piyu     FIN 
;
PROC PRINT DATA = TEMP;
RUN;

Когда мы выполняем приведенный выше код, он дает следующий результат —