結構それっぽく?仕上がるので、便利です。基本文字切れしないし。
そんなPDFの小技の一部です。
data LB;
subjid='A';visit='サイクル1';val=100;output;
subjid='A';visit='サイクル2';val=100;output;
label SUBJID='症例番号' VISIT='サイクル' VAL='検査値';
run;
data VITAL;
subjid='B';visit='サイクル1';val=50;output;
subjid='B';visit='サイクル2';val=70;output;
label SUBJID='症例番号' VISIT='サイクル' VAL='検査値';
run;
適当なデータがあって
ods pdf file="display1.pdf";
proc print data=lb;
by visit;
run;
proc print data=vital:
by visit;
run;
ods pdf close;
こんな感じで実行すると
こんな感じですね。
今回注目なのは
左側にある「しおり」の部分です。
「Printプロシジャ」―「サイクル=サイクル1」-「データセット WORK.LB」とかって
勝手になってます。
SAS知っている人に見せるなら、解ってもらえるのですが、以前まったく知らない人に
出力結果を速報として(親切で)あげようと思ってods pdfでぱっと作って差しあげた際
その人から「Printプロシジャ」ってなに?WORK.ってなんなの?とか聞かれて
1つ1つ説明した挙句、「わかんないから手で普通の言葉に直して、あと最終レポートも早く作ってね」と言われて、まあ、そりゃそうかと思いつつ、ポチポチ手で直した寂しい記憶があります。
でもそういう時
ods pdf file="display2.pdf";
ods proclabel='臨床検査';
proc print data=lb
contents="データ元:LB";
by visit;
pageby visit;
run;
ods proclabel='バイタルサイン';
proc print data=vital
contents="データ元:VITAL";
by visit;
pageby visit;
run;
ods pdf close;
こんな感じで、色々工夫できます。
先に実行結果から
ods proclabelでプロシジャ出力の最上位のしおりを指定できます。
byはby変数がそのまましおりになりますが、pageby等で、ページを分けることができます。
contents=で、元データのしおりを制御できます。
実は、もっと山ほどオプションがあって、階層いじったりもできるのですが、とりあえずここまで。
0 件のコメント:
コメントを投稿