変数の並び順
 どうでもいいといえばいいのだが、たまに変数の順番が気に入らなくなることがある。
 変数の順番を並べたい時は、少なくとも2つの方法がある。どっちも似たようなもんだが…

例1:
DATA 〜;
 
 SET 〜:
 …
RUN;

 ↑の例の中で、SET文の前に↓に挙げる「1」か「2」を書く。
1.「FORMAT (変数1) (変数2) (変数3)…」
2.「LENGTH (変数1) (変数1の長さ) (変数2)(変数2の長さ) (変数3)(変数3の長さ)…」

 PGMを上から見ていって変数を生成するため、SET文で指定されたデータセットの変数を生成する前に、
FORMATとLENGTHで指定した変数が作成されることになる。

 以下念のため。
 「_COL1」「_COL2」「_COL3」…「_COL8」「_COL9」の順で9変数をもつSASDS「SAMPLE1」について
 以下の例2のようなDATAステップを書いたとする。

例2:
DATA SAMPLE2;
 FORMAT _COL9;
 SET SAMPLE1:
RUN;

 ↑この場合、SAMPLE2の変数の順番は「_COL9」「_COL1」「_COL2」「_COL3」…「_COL8」の順になる。

 変数が多い場合は、できるだけ目を合わさない方がいい。
 変数名--変数名で括れる程度なら良いのだけど、
無い場合、仕様書なりが.xls形式であった場合はコピペした方が早いだろう。
 変数が順に並んでいないからといって、元となるSASデータセット変数にフォーマットがあてられている場合は、
必要のない限りそのままにしておいた方がよいと考えられる。


(29NOV2009追記)
 今になって、SASデータセットを作ってからproc sqlで変数を指定していけば確実であることに気づいた。


29NOV2009 update.