sas에서 그룹별(중복값들에 대해)로 각 순서를 매기는 방법에 대하여 알아보자.
예를 들어 설명하면 1이라는 값이 3개가 있으면 새로운 변수를 생성해 1이라는 값 옆에 1부터 3까지 생성하는 것이다.
[코딩]
/*예제데이터 a 생성*/
data a;
input jin@@;
cards;
1 1 1 2 2 2 2 2 3 3
;
run;
/*예제데이터는 데이터가 순서대로이지만 원래는 proc sort를 그룹이 되는 변수별로 실시해줘야됨*/
proc sort data=a; by jin; run;
/*새로운 변수를 생성, 그룹별로 1부터 누적값을 만들어줌*/
data b;
set a;
by jin;
if first.jin=1 then n_jin=0;
n_jin+1;
run;
[결과]
위와 같이 코딩을 실행하면 아래와 같은 결과가 b라는 데이터셋으로 출력된다.
jin이라는 변수에 1그룹이 3개이므로 우측에 n_jin이라는 변수를 생성하여 1,2,3이라는 값을 만든것이다.
그룹별로 동일값들에 대해서 순차적으로 1씩 누적하여 값을 매긴것이다.
'SAS' 카테고리의 다른 글
[SAS] sas에서 그룹별로 여러변수에 특정값이 공통으로 존재하는 경우 그룹수 추출방법 (0) | 2014.05.14 |
---|---|
[SAS] sas에서 그룹별로 각각 두 개 이상 변수에 특정값이 포함된 경우 추출하는 방법 (0) | 2014.05.14 |
[SAS] sas에서 두개의 데이터셋 left join후 우측데이터 부분 모두 제거방법 (0) | 2014.05.12 |
[SAS] sas에서 그룹별로 특정값이 있는 경우 체크하는 방법 (0) | 2014.05.09 |
[SAS] sas에서 left join 왼쪽데이터셋 기준 가로병합하는 방법(교집합되는 부분가져오는 경우) (0) | 2014.04.29 |
댓글