长数据转宽数据
proc sort data=long;
by obs ID measure male exposure;
run;
proc transpose data=long out=wide1;
by ID;
var tolerance;
run;
proc transpose data=long out=wide2 (drop= _NAME_); * Drop _NAME_;
by ID male;
var tolerance;
run;
proc transpose data=long out=wide3 (drop=_NAME_) prefix=tol;
by ID male;
var tolerance;
run;
proc transpose data=long out=wide4 (drop=_NAME_) prefix=tol;
id measure; * ID Variable;
by ID;
var tolerance;
run;
* Prefix: Specify the names for the transposed variables;
proc transpose data=long out=wide (drop=_NAME_) prefix=tol;
by obs ID male exposure;
var tolerance;
run;
proc print data=wide; run;
宽数据转长数据
proc sort data=wide;
by obs ID male exposure;
run;
proc transpose data=wide out=long1;
by ID;
var tol1 - tol5;
run;
proc transpose data=wide out=long2 (rename=(col1=tolerance) drop=_name_);
by obs ID male exposure;
var tol1 - tol5;
run;
其他的还可以用data转换,能达到一样的效果