Sas에서 intck 함수를 사용하는 방법(예제 포함)
SAS에서 INTCK 함수를 사용하면 SAS에서 두 날짜 간의 차이를 빠르게 계산할 수 있습니다.
이 함수는 다음 기본 구문을 사용합니다.
INTCK(간격, 시작 날짜, 종료 데이터, 방법)
금:
- 간격 : 계산할 간격(일, 주, 월, 분기, 연도 등)
- 시작 날짜 : 시작 날짜
- 종료일 : 종료일
- method : 이산형 또는 연속형 방법을 사용하여 간격을 계산합니다.
다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.
예: INTCK 함수를 사용하여 SAS에서 날짜 간 차이 계산
두 개의 날짜 변수를 포함하는 SAS에 다음과 같은 데이터 세트가 있다고 가정해 보겠습니다.
/*create dataset*/
data original_data;
format start_date end_date date9. ;
input start_date: date9. end_date: date9. ;
datalines ;
01JAN2022 09JAN2022
01FEB2022 22FEB2022
14MAR2022 04APR2022
01MAY2022 14AUG2023
06AUG2022 10NOV2024
;
run ;
/*view dataset*/
proc print data = original_data;
다음 코드를 사용하여 일, 주, 월, 분기 및 연도 단위로 start_date 및 end_date 변수 값 간의 차이를 계산할 수 있습니다.
/*create new dataset*/
data new_data;
set original_data;
days_diff = intck (' day ', start_date, end_date);
weeks_diff = intck (' weeks ', start_date, end_date);
months_diff = intck (' months ', start_date, end_date);
qtr_diff = intck (' qtr ', start_date, end_date);
years_diff = intck (' years ', start_date, end_date);
run ;
/*view new dataset*/
proc print data = new_data;
5개의 새로운 변수는 일, 주, 월, 분기 및 연도 단위로 start_date 와 end_date 간의 차이를 보여줍니다.
INTCK 함수에서 ‘ c ‘ 인수를 사용하여 전체 일, 주, 월, 분기 및 연도의 차이만 계산할 수 있습니다.
/*create new dataset*/
data new_data;
set original_data;
days_diff = intck (' day ', start_date, end_date, ' c ');
weeks_diff = intck (' weeks ', start_date, end_date, ' c ');
months_diff = intck (' months ', start_date, end_date, ' c ');
qtr_diff = intck (' qtr ', start_date, end_date, ' c ');
years_diff = intck (' years ', start_date, end_date, ' c ');
run ;
/*view new dataset*/
proc print data = new_data;
이 표와 이전 표의 차이점을 확인하세요.
이 표에서는 1월 1일과 1월 9일 사이의 주 수 차이가 1 로 계산됩니다. 왜냐하면 이 날짜 사이에는 일주일 전체만 들어갈 수 있기 때문입니다.
그러나 이전 테이블에서는 두 날짜 사이에 2개의 부분 주가 포함되어 있으므로 주의 차이는 2 로 계산되었습니다.
추가 리소스
다음 튜토리얼에서는 SAS에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
SAS에서 DateTime을 날짜로 변환하는 방법
SAS에서 날짜를 추가하는 방법
SAS에서 날짜로부터 요일을 얻는 방법