SASの列に繰り返し数列を生成するには、1からx?SASに繰り返し番号の列を追加する方法は?
と仮定xは3
データのようです:
name age
A 15
D 16
C 21
B 35
E 79
F 85
G 64
と私はリストという名前の列を追加したい、このように:私は考えることができる
name age list
A 15 1
D 16 2
C 21 3
B 35 1
E 79 2
F 85 3
G 64 1
SASの列に繰り返し数列を生成するには、1からx?SASに繰り返し番号の列を追加する方法は?
と仮定xは3
データのようです:
name age
A 15
D 16
C 21
B 35
E 79
F 85
G 64
と私はリストという名前の列を追加したい、このように:私は考えることができる
name age list
A 15 1
D 16 2
C 21 3
B 35 1
E 79 2
F 85 3
G 64 1
最も簡単な方法mod
と繰り返しカウンタを使用することです。
data want;
set have;
list = 1 + mod(_N_ - 1,3);
run;
mod
(除算後の余りを与える)モジュロ関数です。
したがって、パラメータに応じて変化させたい場合は、3をパラメータに変更します。あなたのサンプルデータで `person3`あり、そしてどのように我々は、彼らが仕事であるか否かを知っています
%let num_atwork = 2;
data want;
set have;
list = 1 + mod(_N_ - 1, &num_atwork.);
run;
このアイデアが大好き!どうもありがとう! – juanbin
? – user667489
私たちには8人の人がいて、これらの人に仕事を割り当てる必要があります。そのうちのいくつかが今日仕事していない場合、彼らは休暇や病気の日にいるので、残りの人に仕事を割り当てる必要があります。ここで私は3人で簡単にします。 – juanbin