用proc transpose也可以啊
data a;
do id=1001;brand=1;value=1;output;end;
do id=1001;brand=2;value=1;output;end;
do id=1001;brand=3;value=1;output;end;
do id=1002;brand=1;value=1;output;end;
run;
proc sort data=a ;
by id;
run;
proc transpose data=a out=b(drop=_:) prefix=brand_;
by id;
var value;
id brand;
run;