こんにちは!しなもんです。
仕事上SASでデータ分析する際、データに連番をふることが多いので備忘としてまとめておきます。
みなさまのお役に立てますと幸いです。
こんな方におすすめ
- SASでデータのクレンジングや分析を行う方
- SASでデータの扱いを学びたい方
サンプルデータ
既存のデータを使用しても問題ありませんが、ここではデータを作成するところから説明します。下記のようにデータステップでサンプルデータを作成します。
data DATA1;
input name$ age;
cards;
Bob 10
Jack 20
Tom 14
;
run;
連番付与方法
連番を付与する方法はいくつかありますが、ここでは2つの方法をご紹介します。
まず1つ目です。
date DATA2;
set DATA1;
No = _N_;
run;
_N_ | SASの自動変数で、データステップがオブザベーションを上から順に読み込む毎に1~番号を振る。 |
2つ目です。
data DATA3;
set DATA1;
if first.name then SEQ = 0;
SEQ + 1:
run;
FIRST.BY変数 | BY変数の値でグループ分けした時の、各グループ分けの最初に「1」、それ以外に「0」が入る |