我有公司列表(gvkey)和年份(fyear)。根据每个公司年度的观察,我有跨列的每月销售额(列 sale_1 到 sale_12 表示 1 月销售额到 12 月销售额)。我想比较每个月的销售额(例如,一月到二月、二月到三月等),并为每个差异创建 11 组变量(例如,diff_2=sale_2-sale_1 等)。是否有数组或 do 循环可以用来创建这些变量,而不是通过 diff_12 写入 diff_2?
我正在考虑创建 proc sql 每月合并一次,但这听起来更长。
如果您只想比较 SALES_1 和 SALES_2 那么这应该是微不足道的。
data want;
set have;
diff2 = sale_2 - sale_1;
diff3 = sale_3 - sale_2;
...
run;
您可以创建几个数组并节省一些输入,但计算 11 个新变量似乎不值得。