将数据集与重命名的变量组合在一起

时间:2016-03-20 22:54:51

标签: sas data-manipulation

我有一个数据集,可以在两个特定的时间轴内回答调查问题。我想加入这些数据集,但变量名称是相同的。 如何更改两个数据集中的变量名称,以便我可以成功加入它们?

ID Q1 Q2 Q3 Q4等...

我想添加年份' 1995'因此它成为1995Q1 199Q2等等。 我想要那个说1997年的另一个数据集。

data test;
rename q1 = 1995q1; * and so on this will continue *
set test.one;
run;
proc print data =test;
run;

但如果我有超过50个问题,那么这将永远。什么是一种有效的方法来执行此重命名方法,然后加入两个数据集

1 个答案:

答案 0 :(得分:1)

我建议堆叠数据。这样,从长远来看,它可以更容易地进行分析。确保添加一年的变量。只有当Q1在不同时间内相同时才有意义。

data stacked;
   set y1995 (in=a)
       y2015 (in=b);
if a then year=1995; else year=2015;
run;

否则,您可以使用变量列表重命名 - 假设您具有一致的名称。

rename q1-q50 = Y1995_Q1 - Y1995_Q50;