데이터 분석에는 시간과 관련된 칼럼들로 많은 결과를 유추할 수 있습니다.
웹 접속 로그, 주식 가격등에도 시간 데이터가 존재합니다.
예를들어, a고객이 다음에 예약할 렌트카의 가격대를 예측하고자 합니다.
먼저 a 고객이 과거에 예약한 렌트카의 가격대를 통해 예액할 렌트카의 가격대를 예측할 수 있다라는 가설을 세웁니다.
이 가설을 사용하여 예측 모델을 만들기 위해서는 예약 레코드별로 해당 예약 고객의 과거 예약 레코드 정보를 결합한 데이터를 만들어야 합니다.
과거의 예약 데이터를 얻고 과거 1년간 평균적으로 빌린 렌트카의 가격대를 계산하여 정보를 부여합니다
예약한 렌트카의 가격과 과거 1년간의 렌트카 평균 가격이 있어 연관 관계 분석도 가능하며, 예측 모델의 설명 변수로도 사용할 수 있습니다.
• 이전의 데이터
data work.testdata5;
set work.testdata;
lag_value1 = lag(total_price);
lag_value2 = lag(lag_value1);
run;
Lag 함수는 데이터셋의 이전 행에 있는 값을 가져오는데 사용합니다.
주로 데이터셋의 현재행과 관련된 이전 행의 값을 계산할 때 사용됩니다.
시계열 데이터나 데이터 변화의 패턴을 분석하는데 사용됩니다.
• 누적합
누적합을 구함으로서 데이터 변화를 추적하거나 시간에 따른 데이터의 동적 변화를 이해할 수 있습니다.
누적합은 데이터 시각화(데이터의 증가/감소패턴 가시적 표현 가능), 비즈니스 분석(특정 기간의 누적 수익/비용/고객 추정해 비즈니서 성과 모니터링), 시계열 데이터 분석(주가 데이터에서 누적 수익률 계산, 매년 판매량 데이터 누적 판매량 계산) 등으로 활용할 수 있습니다.
data work.testdata6;
set work.testdata;
retain cum_sum;
cum_sum+total_price;
run;
위 코드는 누적합을 계산하는 코드입니다.
data work.testdata6 : work라이브러리에 testdata6이라는 새로운 데이터셋을 생성합니다. 결과 데이터라고 할 수 있다.
set work.testdata: work.testdata를 가져온다.
retain cum_sum: retain 옵션은 누적합을 가져온다.
cum_sum+total_price: cum_sum 값을 total_price 값을 더해 누적합을 생성한다.
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.