「フォーマット名を取得したい」 とか 「ある特定のフォーマットにどんなコードがあるのか見てみたいんだけど」 という質問を度々頂くので、解説したいと思います。
* サンプルフォーマット ; proc format; value A_ 1="aaa" 2="bbb" ; value $B_ "xx"="aaa" "yy"="bbb" ; invalue C_ "ccc"=1 "ddd"=2 ; run; |
サンプルで作成したフォーマットカタログから「フォーマット名」を出力する例。
proc catalog cat=work.formats; contents; run; quit; |
青字部分は「cat=ライブラリ名.フォーマットカタログ名」という感じで適宜変えてください。
データセット化したい場合は、「OUT=」を使います。
proc catalog cat=work.formats; contents out=OUT1; run; quit; |
サンプルで作成したフォーマットカタログから「フォーマットの中身」を出力する例。
「フォーマットの中身」の文字数が多くて枠のなかに収まらない文字は切られて表示されるので注意
これも青字部分を 「lib=ライブラリ名.フォーマットカタログ名 fmtlib」 という感じで適宜変えてください。
出力するフォーマットを絞りたい場合は、SELECTを使います。
INFORMATの場合は、以下のように、頭に@を付けるのを忘れずに!
proc format lib=work.formats fmtlib; select A_ $B_ @C_; run; |
データセットに出力したい場合は、「CNTLOUT=」を使います。
proc format lib=work.formats cntlout=OUT2; run; |
0 件のコメント:
コメントを投稿