c********9 发帖数: 160 | 1 sas新手,有五个变量想把他们纵向拼接成一个变量,这五个变量只是dataset的
variable而已,似乎用
data a;
set b c;
的方法不行,请教这个怎么做? |
g**u 发帖数: 205 | 2 rename the variable you want to combine for each data set, and then
data a;
set b c;
run; |
c********9 发帖数: 160 | 3 谢谢!这样做之后,combine成了n列,而不是一列,就像一个对角矩阵一样的。
【在 g**u 的大作中提到】 : rename the variable you want to combine for each data set, and then : data a; : set b c; : run;
|
b********r 发帖数: 764 | 4 比如你的5个variable是var1,var2,。。,V5吧
data outdsn;
set indsn1(rename=(var1=new))
indsn2(rename=(var2=new))
indsn3(rename=(var3=new))
indsn4(rename=(var4=new))
indsn5(rename=(var5=new));
run;
【在 c********9 的大作中提到】 : sas新手,有五个变量想把他们纵向拼接成一个变量,这五个变量只是dataset的 : variable而已,似乎用 : data a; : set b c; : 的方法不行,请教这个怎么做?
|
g**u 发帖数: 205 | 5 楼上那个更好。
我这个比较直白+低级。
data a;
input x;
cards;
1
2
3
;
run;
data b;
input u;
cards;
4
5
6
;
run;
data c;
input r;
cards;
7
8
9
;
run;
data d;
set b;
rename u=x;
run;
data e;
set c;
rename r=x;
run;
data y;
set a d e;
run;
【在 c********9 的大作中提到】 : 谢谢!这样做之后,combine成了n列,而不是一列,就像一个对角矩阵一样的。
|
c********9 发帖数: 160 | 6 谢谢!这个方法很好用!给您个包子吧
【在 b********r 的大作中提到】 : 比如你的5个variable是var1,var2,。。,V5吧 : data outdsn; : set indsn1(rename=(var1=new)) : indsn2(rename=(var2=new)) : indsn3(rename=(var3=new)) : indsn4(rename=(var4=new)) : indsn5(rename=(var5=new)); : run;
|
c********9 发帖数: 160 | 7 谢谢!给您个包子
【在 g**u 的大作中提到】 : 楼上那个更好。 : 我这个比较直白+低级。 : data a; : input x; : cards; : 1 : 2 : 3 : ; : run;
|
s******8 发帖数: 102 | 8 data outds;
set yourds;
array v(5) var1-var5;
do I=1 to 5;
newvar=var(I);
output;
end;
drop var1-var5 I;
run; |