본문 바로가기

SAS106

[SAS] SAS TTEST 독립 t-검정 이표본(two samples) t-검정(two sample T-test) SAS에서 TTEST가 가능하며, 일표본(one sample), 이표본(two samples), 대응표본(paired observations)에 대한 t-검정(paired T-test)을 실시 할 수가 있다. SAS를 이용하여 이표본(two samples) t-검정(ttest)에 대해서 알아보자. 이표본 t-검정은 두 그룹의 모평균의 차가 특정한 상수와 같은지를 검정하기 위하여 각 그룹으로부터 표본을 추출하여 이들 표본평균의 차를 이용하는 검정법으로 보통 독립 t-검정이라 부르기도 한다. 따라서 두 모집단은 독립적인 관계에 있어야 한다. 7천 1백만건의 테스트 데이터를 이용하여 독립 t-검정을 해보자.(이표본 two sample 검정) test라는 데이터셋으로 성별과 비용 두가지의 변수를 가지고 있으며 .. 2014. 2. 7.
[SAS] SAS proc surveyselect를 이용한 층화랜덤추출방법(빅데이터,bigdata) 빅데이터(bigdata)에서 전수데이터를 사용하지 못해 대부분 표본데이터를 사용할 것이다. 이때 이용되는 표본추출방법 중 하나인 층화표본추출 층화랜덤추출방법이다. SAS에서 모집단으로 부터 표본을 추출할 때 어떤 변수에 대해 층화로 추출하는 방법을 알아보자. 표본을 추출할 때 proc surveyselect 를 사용하는데 층화랜덤추출을 하기 전에 층화할 변수에 대해서 먼저 proc sort 구문을 이용해 정렬을 한뒤에 추출을 해야한다. sex_tp_cd가 성별을 의미하는데 성별을 기준으로 정렬하여 성별 별로 10%추출을 한다. method=srs 는 추출방법을 SRS(단순무작위추출)로 추출하겠다는 것을 의미 rate=0.1 은 모집단 대비 10%를 추출하겠다는 의미 이외에도 스크린샷에는 없지만 자주 이용.. 2014. 2. 6.
[SAS] sas proc export를 이용해 엑셀(EXCEL)파일 내보내기 SAS dataset을 여러가지 파일형식으로 내보내기를 할 수가 있는데 가장 대표적으로 많이 사용하는 것들이 텍스트 파일과 엑셀 파일이다. 그 중 SAS dataset을 Excel파일로 내보내는 방법을 알아보자. 가장 간단한 방법은 [파일]-[데이터내보내기]를 통해서 엑셀 파일로 내보내는 방법인데 만약 이 방법이 안되는 경우에 직접 확장편집기에서 코딩을 통해 내보내는 방법을 알아보도록 하겠다. [파일]-[데이터내보내기]가 간혹 에러창이 뜨면서 안되는 경우에는 아래의 주소를 통해 해결 할 수가 있다. http://sasbigdata.com/28 확장편집기에서 코딩으로 엑셀(EXCEL)파일을 SAS로 가져오는 방법. proc import 사용 http://sasbigdata.com/60 확장편집기에서 코딩으.. 2014. 2. 6.
[SAS] sas proc import를 이용해 엑셀(EXCEL)파일 불러오기 여러가지 파일들을 SAS로 불러와서 핸들링하고 분석을 할 수가 있는데, 가장 대표적으로 많이 사용하는 것들이 텍스트 파일과 엑셀 파일이다. 그 중 엑셀 파일을 SAS로 불러오는 방법을 알아보자. 가장 간단한 방법은 [파일]-[데이터가져오기]를 통해서 엑셀 파일을 가져오는 방법인데 만약 이 방법이 안되는 경우에 직접 확장편집기에서 코딩을 통해 가져오는 방법을 알아보도록 하겠다. [파일]-[데이터가져오기]가 간혹 에러창이 뜨면서 안되는 경우에는 아래의 주소를 통해 해결 할 수가 있다. http://sasbigdata.com/28 확장편집기에서 코딩으로 엑셀(EXCEL)파일을 SAS로 가져오는 방법. proc import out=work.a /*생성할 dataset 이름*/ datafile='C:\Docume.. 2014. 2. 6.
[SAS] SAS에서 proc rank를 이용하여 순위구하기 SAS의 proc rank를 이용하여 값의 순위를 구하여 보자. 위의 사진을 보면 proc rank문을 이용하여 cost에 대한 순위를 구한 것이다. proc rank - 순위를 구하여보자 var cost - cost 변수에 대한 값들의 순위를 구해라. ranks cost_rank - 생성된 순위를 cost_rank라는 변수를 생성하여 입력해라. (위의 사진에서 rank for variable cost는 변수명이 아닌 자동으로 만들어진 라벨명이다. 실제 변수명은 지정한대로 cost_rank로 되어있음) 아래의 사진을 보면 option nolabel을 통해 라벨을 제거하면 실제 변수명을 볼 수 있다. 위의 사진과 함께 간단하게 순위를 매겨보았다. 기본적으로 작은값이 1부터 매겨진다. 아래의 사진을 통해 좀.. 2014. 2. 5.
[SAS] SAS options firstobs, obs (필요한 관측치만 가져오기) SAS에서 bigdata를 다루면서 필요하고 보고 싶은 관측치만 간단하게 짤라서 보고 싶은 경우가 있다. 그에 해당하는 옵션인 firstobs 와 obs 에 대해서 알아보자. 아래의 코딩 사진과 주석을 보면서 이해해보자. ex데이터는 약5백6십만 건의 데이터 인데 options obs=100을 입력함으로써 ex1데이터셋으로 ex데이터셋의 첫번째 관측치부터 100번째 관측치까지 뽑아내는 말이다. 그다음은 같은 방법인데 앞에 firstobs=5라는 것을 추가하여 첫번째가 아닌 5번째 관측치부터 obs=10 즉, 5번째 관측치부터 10번째 관측치 6개(5,6,7,8,9,10번째 관측치)를 가져오라는 말이다. 데이터셋 속성을 보면 알 수 있듯이 기존 ex데이터셋은 5백 6십만건 obs=100을 입력하여 ex1은.. 2014. 2. 5.
[SAS] SAS 함수 (난수 함수) SAS의 난수 함수를 이용하여 확률변수를 생성 할 수 있다. 난수 함수 설명 NORMAL(seed) 표준 정규 분포를 따르는 확률변수의 변량을 생성 RANBIN(seed, n, p) 모수가 n, p인 이항 분포를 따르는 확률변수의 변량을 생성 RANCAU(seed) 위치모수(Location Parameter)의 값이 0, 척도모수(Scale Parameter)의 값이 1인 코쉬(Cauchy)분포 f(x)=1/(1+x^2)를 따르는 확률변수의 변량을 생성 RANEXP(seed) 모수의 값이 1인 지수 분포 f(x)=exp(-x), x >0으로부터 확률변수의 변량을 생성 RANGAM(seed, a) 형상모수(Shape Parameter)가 a인 감마 분포로부터 확률변수의 변량을 생성 RANNOR(seed) .. 2014. 2. 4.
[SAS] SAS 함수 (통계 및 확률분포 함수) SAS함수를 이용하여 통계 및 확률분포 함수값을 계산할 수 있다. 통계함수에서는 인수값이 결측치를 포함하면 그 값을 제외하고 함수값을 계산한다. 하지만 직접적으로 수식을 사용하는 경우에는 하나라도 결측치가 있으면 함수값을 결측치로 처리한다. 통계 및 확률분포 함수 설명 MEAN(argument, argument, …) 인수들의 산술평균을 계산 인수중 결측치가 있을시 그 인수는 빼고 계산 결측치를 갖더라도 함수값은 존재 SUM(argument, argument, …) 인수들의 합을 계산 POISSON(lamda, x) 모수가 lamda인 포아송 확률변수에 대해 분포함수값 F(x)를 계산 PROBBETA(x, a, b) 모수가 a, b인 베타 확률변수에 대해 분포함수값 F(x)를 계산 PROBBNML(p, .. 2014. 2. 4.
[SAS] SAS 함수 (삼각함수) SAS의 삼각함수를 이용하여 값을 계산 할 수 있다. argument의 단위는 라디안(Radian) 삼각함수 설명 SIN(argument) 사인 함수 값을 계산 COS(argument) 코사인 함수 값을 계산 TAN(argument) 탄젠트 함수 값을 계산 ARSIN(argument) ARCOS(argument) ATAN(argument) 각각의 역삼각 함수값을 계산 argument는 (-1,1)사이의 값을 가짐 SINH(argument) COSH(argument) TANH(argument) 쌍곡 삼각 함수 값을 계산 SAS 산술함수 참조 http://sasbigdata.com/52 SAS 통계 및 확률분포 함수 참조 http://sasbigdata.com/54 SAS 난수함수 참조 http://sasb.. 2014. 2. 4.
[SAS] SAS 함수 (산술함수) SAS의 산술함수를 이용하여 값을 계산할 수가 있다. 산술함수 설명 ABS(argument) 인수의 절대값을 계산 MAX(argument, argument, argument,…) 인수들 중 최대값을 계산 MIN(argument, argument, argument,…) 인수들 중 최소값을 계산 EXP(x) 인수만큼 e의 거듭제곱 계산. e는 자연로그의 밑. 값은 약 2.71828 GAMMA(α) 감마 함수를 계산 감마함수는 GAMMA(α)=(α-1)! LOG(argument) 자연로그값을 계산 LOG10(argument) 상용로그값을 계산 LOG2(argument) 밑이 2인 로그값을 계산 예를 들어 보자. a=abs(-9); a는 -9의 절대값인 9가 된다. b=min(1,3,5); b는 1, 3, 5 .. 2014. 2. 4.
[SAS] SAS를 이용해 조건에 맞는 데이터만 가져오는 방법 데이터에서 조건에 맞는 원하는 값만 가져오고 싶은 경우가 있다. 이런경우 일반적으로 가장 많이 이용하는 것이 if문을 이용한다. 아래 사진 참조 위의 사진처럼 a.ace2라는 데이터에서 변수 order가 1인 것들만 가져와라는 것인데 보통 if를 많이 이용한다. 하지만 if만 있는 것일까? 아니다. where문을 이용해서도 가져올 수 있다. if문의 부분에 where의 명령어를 삽입하여도 같은 결과가 나온다. 위 사진 참조 그렇다면 if와 where의 차이가 무엇일까? where문장은 자료를 data단계로 불러들이기 전 조건에 일치하는 즉, 만족하는 자료만 선택해 준다. 그러므로 전체자료를 읽어 들인 후에 조건에 맞는 것을 찾는 if 문장보다 더 효율적인 것이다. 이것이 자료를 가져올때 if와 where.. 2014. 2. 4.
[SAS] SAS에서 IF문을 이용해 데이터를 비교하기 SAS에서 데이터들을 비교해 볼때 보통 proc compare를 많이 사용한다. SAS 두개의 데이터셋을 proc compare를 이용해 비교하는 방법 > http://sasbigdata.com/7 SAS 하나의 데이터셋에서 두개의 변수를 proc compare를 이용해 비교하는 방법 > http://sasbigdata.com/48 이번에는 하나의 데이터셋에서 IF문을 이용해 두개의 변수들을 비교해보고 변수비교시 서로 다른 관측치를 가지는 데이터는 따라 뽑아내서 새로운 데이터셋으로 만드는 작업을 해보자. hwi라는 데이터셋에는 a와 a1 두가지 변수, 각각 10개의 관측치로 구성되어있다. 변수 a와 a1을 IF문을 통해 비교하여 다른 값을 가지는 것들만 따로 출력해본다. 코딩과정을 간단하게 설명하자면(사.. 2014. 1. 29.