マクロ変数を作成していますが、Proc Report で同じマクロ変数を使用すると、このマクロによって値の前にスペースが生成されます。
COUNT(DISTINCT USUBJID) を次のように選択します。DMDD からの N1 (ARMN=1)。
同じコードでそれを修正するにはどうすればよいですか??
これは、マクロ変数が文字として格納されるためです。ソース データが数値の場合、SAS は best12 を使用します。フォーマットを文字に変換するため、結果には先頭の空白が埋め込まれます。これを回避するには、先頭と末尾の空白を削除する CATS 関数を使用します。LEFT または STRIP 関数は、文字変数に対してのみ機能するため、使用できません。
Select cats(COUNT(DISTINCT USUBJID)) into: N1 from DMDD where ARMN=1;
Select trim(put(COUNT(DISTINCT USUBJID), 16. -L)) into: N1 from DMDD where ARMN=1;
PUT() を使用して、出力文字列を -L (左) 揃えでフォーマットします。