Data set



Code


/* Get Age */
data workshop.data3;
    set workshop.data3;
    birth = input(substr(regnum,1,6), YYMMDD6.);
    today = today();
    age  = int((today-birth)/365.25);
    drop birth today;
run;


  • 우선 substr 함수를 사용해 주민등록번호의 앞자리만 자른 후, 이것을 input 함수를 이용해  YYMMDD6. Informat으로 읽어들여 Numeric으로 변환하여 birth 변수에 저장한다. 
  • today 함수는 오늘 날짜를 numeric으로 돌려준다. 이 숫자 변수는 1960년 1월 1일부터 현재까지의 날짜의 차이를 뜻한다.
  • age는 오늘 날짜에서 출생날짜를 뺀 후 365.25로 나누어준다. 그리고 만 나이이므로 int 함수를 통해 소숫점을 잘라내서 정수로 만들어 준다.
  • 마지막으로 사용한 임시변수 birth, today를 drop해준다.