【发布时间】:2019-02-06 04:33:16
【问题描述】:
我在使用 sas 数据步骤时遇到了这个问题。我的要求是获取变量列表,例如
total_jun2018 = sum(jun2018, dep_jun2018);
total_jul2018 = sum(jul2018, dep_jul2018);
Data final4;
set final3;
by hh_no;
do i=0 to &tot_bal_mnth.;
bal_mnth = put(intnx('month',"&min_Completed_dt."d, i-1), monyy7.);
call symputx('bal_mnth', bal_mnth);
&bal_mnth._total=sum(&bal_mnth., Dep_&bal_mnth.);
output;
end;
但我遇到了宏变量 bal_mnth 未解析的错误。同样,一旦它成功运行,但我希望输出必须按顺序打印,但它只在i=6 时打印最后一个循环的输出,然后它只打印Total_DEC2018=sum(DEC2018, DEP_DEC2018);
任何帮助将不胜感激!
谢谢, 阿杰
【问题讨论】:
-
数据步骤开始运行后,您无法更改其代码。因此,您的 CALL SYMPUT() 语句不会对当前数据步骤的代码运行产生任何影响
-
您知道源数据集中有哪些变量吗?它是一个常量列表吗?或者它会改变吗?如果是这样,它会如何变化?
标签: sas