比較的基本的な[proc transpose]を試みていますが、問題はデータがソートされることを期待しているということです。これは私が使用している変数の1つに対しては問題ありませんが、他の変数を並べ替えることはできません。私が扱っているデータはこのように見えます。データをソートする必要なしにSAS proc transposeを実行する
data have;
input SESSION $ Activity $;
datalines;
AAAA Activity1
AAAA Activity1
AAAA Action1
AAAA Action1
AAAA Activity2
AAAA Activity2
AAAA Action1
BBBB Action1
BBBB Action3
BBBB Action3
BBBB Activity2
BBBB Activity2
CCCC Activity1
CCCC Activity1
CCCC Action2
CCCC Action2
CCCC Action4
CCCC Action1
CCCC Activity1
;
run;
私はデータをこのように見せようとしているので、セッションごとに異なるアクション/アクティビティが水平方向に移動します。
data have;
input Session $ Label $ Part"x" $;
datalines;
AAAA Journey Activity1 Activity1 Action1 Action1 Activity2 Activity2 Action1
BBBB Journey Action1 Action3 Activity2 Activity2
CCCC Journey Activity1 Activity1 Action2 Action2 Action4 Action1 Activity1
私は次のコードで遊んでてきたが[PROC転置]機能は、この場合の「アクティビティ」にすることはできませんソートするデータは、必要とします。私は[ソートされていない]関数を使う必要があると思いますが、どこに置くべきか分かりません。私はこれが正しいとは限りませんが、私は以下のことを持っています。
proc sort data=custs.tenmay_pre_transpose
out=custs.tenmay_trans_srt ;
by SESSIONID Activty_Category notsorted;
run;
proc transpose data=custs.tenmay_trans_srt
out= custs.tenmay_traspose
name=Journey;
by SESSIONID;
run;
ブリリアント!ありがとう!私はそれを働かせることができました。私は今、どのように動作するのだろうかと思っています。並べ替えられたデータセットは何らかの形でメモリに保持されていますか? [proc transpose]がソートの出力を知るためには、[out =]文が必要だと思っていました。 – Taylrl
'out ='がなければ、 'proc sort'は入力データセットを置き換えます。 – user667489