私は行が識別子であり、列が以下に示すようにフラグを持つテーブルを持っています。各行について特定の値を持つデータセット内の列のインデックスを見つける
ID C1 C2 C3 C4 C5 C6 C7 C8 C9 C10
17028 0 1 0 0 0 1 0 0 1 0
17030 1 1 1 0 1 0 0 0 1 0
17037 0 1 0 0 0 0 0 1 1 0
17040 1 1 0 0 1 0 0 0 1 0
17041 0 1 0 0 0 0 1 0 1 0
、iが値を持つ変数の連結名またはインデックスを表すフラグをしたい= 1
これは私が使用されるコードであるが、しかしで効率少しです仕事を終わらせる。
data temp71;
set temp7;
format flag 20.;
flag=0;
if c1= 1 then flag=flag+1000000000000000;
if c2= 1 then flag=flag+100000000000000;
if c3= 1 then flag=flag+10000000000000;
if c4= 1 then flag=flag+1000000000000;
if c5= 1 then flag=flag+100000000000;
if c6= 1 then flag=flag+10000000000;
if c7= 1 then flag=flag+1000000000;
if c8= 1 then flag=flag+100000000;
if c9= 1 then flag=flag+10000000;
if c10= 1 then flag=flag+1000000;
if c11= 1 then flag=flag+100000;
if c12= 1 then flag=flag+10000;
if c13= 1 then flag=flag+1000;
if c14= 1 then flag=flag+100;
if c15= 1 then flag=flag+10;
if c16= 1 then flag=flag+1;
run;
@Tom私が試したコードを含めました。 – Yuvaraj