Чтение файла с разделителями-запятыми в SAS - PullRequest
0 голосов
/ 11 марта 2012

Как я могу прочитать в SAS файл .txt в форме:

"A","B","C",...
n1,n2,n3...
m1,m2,m3...
p1,p2,p3...
.
.
.

Где n *, m *, p * и т. Д. Представляют числовые значения.Мне действительно нужно указывать все заголовки, такие как

INPUT A B C D E F G ...

Или есть более краткий способ?

Ответы [ 3 ]

3 голосов
/ 11 марта 2012

Если вы действительно хотите назвать переменные A, B, C, ..., это немного сложнее, но если вы счастливы, назвав их как-то вроде var1, var2, ..., тогда это будет работать:

data test;
 infile 'data.txt' dlm=',';
 input var1-var5;
run;

SAS автоматически генерируетпеременные var1, var2, var3, var4, var5, когда вы говорите var1-var5.

1 голос
/ 12 марта 2012

Другой способ - использовать мастер импорта данных из меню «Файл». Просто убедитесь, что вы выбрали «Файл с разделителями» и поставили «,» в качестве разделителя на кнопке параметров на следующем экране. Использование мастера не всегда создает правильные типы полей, однако если вы нажмете клавишу F4 в редакторе после завершения импорта, он вызовет полный использованный код (включая оператор ввода для всех заголовков столбцов). Затем вы можете отредактировать код для соответствия.

0 голосов
/ 17 марта 2012

Чтобы прочитать текстовый файл с разделителями в наборе данных SAS, используйте PROC IMPORT:

proc import datafile='<path to delimited file>'
out=mydata  /* SAS data set to create */
dbms=dlm
replace;

delimiter=','  /* Specify the delimiter */;
getnames=yes;  /* Get variable names from first row */
run;

Это тот же код, который фактически выполняется при использовании мастера импорта данных.

...