SAS PRO C ИМПОРТНЫЕ ГРУППОВЫЕ ПЕРЕМЕННЫЕ - PullRequest
0 голосов
/ 07 апреля 2020

Как сохранить переменные в отдельных столбцах при использовании импорта pro c с txt-файлом с разделителями табуляции? Создается только одна переменная с именем Name__Gender___Age. Это возможно только с шагом данных?

Это код


proc import datafile= '/folders/myfolders/practice data/IMPORT DATA/class.txt'  
out=new
dbms=tab
replace;
delimiter='09'x; 
run;



Ответы [ 2 ]

1 голос
/ 07 апреля 2020

Вы сказали PRO C IMPORT, что в вашем текстовом файле есть вкладки между полями. Исходя из имени созданной им переменной, скорее всего, вместо этого в вашем файле есть пробелы между полями. И несколько пробелов, чтобы линии выглядели аккуратно выровненными при просмотре шрифтом фиксированной ширины.

Просто напишите свой собственный шаг данных, чтобы прочитать файл (что-то, что вы должны сделать в любом случае для текстовых файлов).

data mew;
  infile '/folders/myfolders/practice data/IMPORT DATA/class.txt' firstobs=2 truncover;
  length Name $30 Gender $6 Age 8 ;
  input name gender age;
run;

Если для NAME или GENDER отсутствуют значения, которые не введены в качестве периода, вы, вероятно, захотите прочитать их, используя форматированный ввод или ввод в режиме столбца вместо простого стиля ввода в режиме списка выше.

1 голос
/ 07 апреля 2020

Файл данных содержит разделители пробелов вместо табуляции, что противоречит вашим ожиданиям.

Поскольку вы указали разделитель табуляции, пробелы в строке заголовка считаются частью столбца с именем Name Gender Age. Поскольку в именах столбцов SAS недопустимы пробелы (настройка по умолчанию), пробелы были преобразованы в подчеркивания. Вот почему вы получили Name__Gender___Age

Измените разделитель на пробел, и вы сможете импортировать.

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

...