我有一个名为b
的数据集,其中包含名为a1
,a2
,a45
,a345
,a999
,{{ 1}}等等。
我想选择a654
- a1
之间命名的客户并弃用其他客户。
我试过这段代码:
a100
但我收到此错误
错误:变量a1不在文件b上。
答案 0 :(得分:2)
将客户标识符中的数字转换为数字,并对该数字应用条件。
data a;
set b;
if 1 le input(substr(customer,2),8.) le 100;
run;
substr(customer,2),8.
返回2de,直到customer
的最后一个字符,即数字input(substr(customer,2),8.)
将数字解释为数字1 le input(substr(customer,2),8.) le 100
是写input(substr(customer,2),8.) between 1 and 100
的sas方式(实际上它更好,因为它允许使用lt
代替le
) if
的then
相当于where
。