我需要输出很多不同的数据集到不同的文本文件。数据集共享一些需要输出的常见变量,但也有许多不同的变量。我已经将这些不同的变量加载到由空格分隔的宏变量中,以便我可以将其宏观化。输出到文本文件
因此,我创建了一个循环遍历数据集并将每个输出到不同文本文件的宏。
为此,我在数据步骤中使用了put语句。 PUT语句是这样的:
PUT (all the common variables shared by all the datasets), (macro variable containing all the dataset-specific variables);
例如为:
%MACRO OUTPUT();
%DO N=1 %TO &TABLES_COUNT;
DATA _NULL_;
SET &&TABLE&N;
FILE 'PATH/&&TABLE&N..txt';
PUT a b c d "&vars";
RUN;
%END;
%MEND OUTPUT;
哪里&瓦尔是包含所需的输出在电流回路数据集中的所有变量宏变量。 它得到解决,例如,:
PUT a b c d special1 special2 special5 ... special329;
现在的问题是,所引用的字符串只能是262个字符。我尝试输出的一些数据集有很多变量需要输出,这个引用字符串的宏变量将保存所有这些变量。有没有其他方法可以做到这一点?
我不认为PUT语句可以引用的变量数量是有限制的。但是为什么在你的PUT语句中有逗号? – Tom
删除了逗号并修改了问题。感谢您指出! – puk789
行情也不需要... – Joe