Как использовать переменные с точкой / точкой в ​​их имени в SAS? - PullRequest
0 голосов
/ 12 октября 2018

Меня смущает, как читать имена переменных с точкой / точкой.процесс останавливается, когда он читает переменную с точкой / периодом;

мой CSV-файл выглядит так:

enter image description here

вот мойкод:

enter image description here

что указано в журнале:

enter image description here

Некоторыеиз друзей предлагают мне изменить имя переменной, я делал это несколько раз, но результат меня расстраивает:

enter image description here

Ответы [ 3 ]

0 голосов
/ 13 октября 2018

Если вы могли бы попробовать более простой подход с использованием импорта процедур, он автоматически преобразует точки (.) В имени переменной в подчеркивание

proc import datafile="X:\folder\sample.csv"
 out=out_ds
 dbms=csv
 replace;
 getnames=yes;
run;

data out_ds1;
 set out_ds;
 d_private=(private='Yes');
run;
0 голосов
/ 13 октября 2018

Включить опцию расширенных имен переменных.Заключите в кавычки переменные с пробелами или специальными символами, например 'this'n.

options validvarname=any;

data want;
    input var1 'var.2'n '3rd var'n;
    datalines;
1 2 3
;
run;
0 голосов
/ 13 октября 2018

Просто исправьте вашу программу, чтобы использовать допустимые имена для ваших переменных.

Имена, которые вы используете в своем коде SAS, должны быть действительными именами SAS.Но они не обязательно должны точно соответствовать заголовкам столбцов в текстовом файле, который вы пытаетесь прочитать.

Допустимые имена - от 1 до 32 символов.Начните с подчеркивания или буквы и включайте только цифры, буквы или подчеркивания.Например, вы можете использовать Accept_pct в качестве имени переменной для переменной, которую SAS показывает как ошибку.

...