2016-03-25 2 views
0
proc means data=tableepisodes noprint; 
output out=tableepisodes 
mean(%ratings %dummies)=%ratings %dummies; 
by ProgCodeID ProgSeasonCodeID year week 

を意味するように選択した列といい、SAS PROCは、私はSASのコードを読んでいたと私は、コードの平均部分が何をするかわからない

は、それが唯一の%の評価の平均をとること、それです変数に%dummies変数を出力に添付しますか?

は本当に私は完全なコードスニペットではありません。このコードスニペット

+1

RATINGSとDUMMIESはマクロで、マクロ変数ではありませんか?マクロ変数の場合は、代わりに '&ratings'と'&dummies'として参照します。 – Tom

答えて

1

を理解する上で助けを得ることができれば感謝し、ノーでしょう。 %rating AND%dummiesにリストされている変数の平均を計算します。もちろんそれらのマクロに含まれているものと仮定します。

マクロ定義を見ることなく、実際に何をしているのかはわかりません。

0

書かれているように、このコードでは、マクロ変数評価ダミーの内部に格納されている変数の平均値を評価します。一例として、評価を取る、我々はそれが以前のようなものとして定義されていたと仮定している:あなたはprocの手段を介して、それを渡すとき

%let ratings = good bad ugly; 

ので、%の評価は、と評価されます醜い悪い良いですとSASは3つの変数すべてを使用します。代わりに

proc means data = tableepisodes noprint; 
    by ProgCodeID ProgSeasonCodeID year week; 
    var good bad ugly; 
    output out = tableepisodes mean=/autoname; 
run; 

:あなたはPROCを書かれている可能性が

はとしての機能を意味します。 (元のデータセットはここに上書きしてしまいますので、避けてください。)

+0

'%ratings'はマクロ変数参照ではなく、ratingsという名前のマクロの呼び出しです。おそらく、そのマクロは変数リストを返します。 – Quentin

+0

おっと、そうです。良いキャッチ、ありがとう! – superfluous

関連する問題