2012-07-28 126 views
1

我是SAS新手,正在尝试重新排列数据集。我觉得它不应该太难,但我现在一直在努力。这里是我的数据集看起来像重新排列SAS中的数据集

Factor Variable Value 
A  X  1 
A  Y  2 
B  X  3 
B  Y  4 

,我想我得到的数据集是

Variable A B 
X   1 3 
Y   2 4 

这可能吗?感谢您的帮助。

回答

3

你想变Value (VAR)的值,被调换到会的Factor (ID)Variable (BY)每个值值命名,而不是保值的名字在输出领域_NAME_ (drop=_NAME_)列。我承认我总是需要玩它来得到我需要的东西。

data in; 
length Factor Variable $1 Value 8; 
input Factor Variable Value; 
cards; 
A  X  1 
A  Y  2 
B  X  3 
B  Y  4 
; 
run; 

proc sort data=in; 
BY Variable; 
run; 

proc transpose data=in out=transp (drop=_NAME_); 
ID Factor; 
BY Variable; 
VAR value; 
run; 

proc print noobs;run; 
+0

我总是记得'by'语句沿着左边,'var'语句组成了您想要保留的度量或数据以及'id'和'idlabel'语句组成列名称。所以'by'和'var'语句的行为与'proc means'类似...... – 2012-07-29 01:17:53