2012-03-11 2 views
0

Как можно прочитать в SAS файл .txt формы:Чтение разделенный запятыми файл в SAS

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

Где п *, м * р * и т.д. представляют числовые значения. Должен ли я действительно указывать все заголовки, такие как

INPUT A B C D E F G ... 

Или есть более сжатый способ?

ответ

3

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

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

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

+0

Спасибо, но как бы изменить это, чтобы импортировать .txt-файл с разделителями-запятыми? – dplanet

+0

Я обновил ответ, чтобы он работал с чтением файла, разделенного запятыми. – itzy

1

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

0

Для чтения текстового файла с разделителями в набор данных SAS, используйте Proc ввоз

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; 

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