我有一个类似于这样的 INPUT 语句:
INPUT FOO BAR CHR1 $ CHR2 $ CHR3 $ CHR4 $ CHR5 $ BLAH;
CHR1
到CHR5
都是字符变量(不是数字)。如果它们是数字,我可以使用编号范围来简化它CHR-CHR5
但由于它们是字符变量,我不知道如何缩短INPUT
命令。我试过这个:
INPUT FOO BAR CHR1-CHR5 $ BLAH;
但它尝试将它们读取为数字变量,而不是字符变量,这会导致不正确的数据加载。
如何导入一系列字符变量并为其分配连续名称?
INPUT FOO BAR (CHR1-CHR5)($) BLAH;
考虑使用带有输入的数组(下面是逗号分隔的文件示例):
data databases;
infile datalines DSD;
array databases(1:5) $15 CHR1-CHR5;
input databases(*);
datalines;
Oracle, SQL Server, PostgreSQL, MySQL, DB2
;
run;