如何制作数据集,其中最后一个变量将在一列中

时间:2016-03-31 14:35:23

标签: sas

我有一个数据集:

1  300  apple   pear     onion
1  302  banana  tomato   cookie
2  302  bread   meat     tomato

如何制作数据集,其中最后一个变量将在一列中。 我需要的是:

Dataset

2 个答案:

答案 0 :(得分:0)

您需要查看CATX函数(或其兄弟姐妹,CATSCATTCATQCAT)。

new_var = catx(var1,var2,var3)

或其他几个选项:

new_var = catx(of var:); 
new_var = catx(of var1-var3);

如果他们都以相同的模式开始。

答案 1 :(得分:0)

proc transposeby语句中的类别和变量一起用于var语句中的转置:

data have;
input var1 var2 var3 $ var4 $ var5 $;
datalines;
1  300  apple   pear     onion
1  302  banana  tomato   cookie
2  302  bread   meat     tomato
;
run;

proc transpose data=have out=want (drop=_name_ rename=(col1 = fruit));
by var1 var2;
var var3 var4 var5;
run;