proc freq data c testhsb 2 c test
• proc freq data = "c: /test/hsb 2"; • /* c 디렉토리의 test폴더에 hsb 2 데이터를 이용하여 freq라는 sas의 procedure를 실행한다 • tables schtyp*female / expected chisq; /* tables schtyp*female 는 schtyp을 행에 female 을 열에 놓 고 빈도수를 세는 것 • / expected chisq; /* expected는 기대빈도를 출력 chisq는 카이스퀘어 통계량을 계산하는 것; run;
• setwd("c: /test") hsb 2=read. csv("c: /test/hsb 2. csv") attach(hsb 2) • /*이는 sas의 data=과 유사한 기능 table(schtyp, female) • /*빈도수를 세는 것으로 행렬을 지정 chisq. test(schtyp, female) • /*chisq. test는 카이스퀘어 검정을 하라는 함수 • fisher. test(schtyp, female)
• t-test • /* sas의 proc ttest와 동일 /testval = 50 • /*sas의 h 0=50과 동일, test value의 줄임말 /variable = write. • /*sas의 var write; 와 동일
• setwd("c: /test") hsb 2=read. csv("c: /test/hsb 2. csv") t. test(hsb 2$write, alternative='two. sided', mu=50, conf. level=0. 95) • /* hsb 2$write는 hsb 2 데이터에 있는 write 변수를 t 검정을 하 는 것, alternative='two. sided', 는 양측검정을 하는 것, mu=50는 평균이 50을 검정하라는 것, conf. level=0. 95는 신뢰수준이 95% 라는 것 • t. test(hsb 2$write, mu=50)
• proc univariate data = "c: testhsb 2"; • /* 기술 통계량을 얻으려고 할 경우 proc univariate 를 사용한 다 • /*var write; var를 쓰고 변수명을 쓰면 된다 • proc univariate data = "c: testhsb 2" loccount mu 0 = 50; • /* loccount mu 0 = 50 는 중위수 즉 미디언이 50인지를 검정하 라는 것 location count • run;
• NPTESTS • /*비모수 검정을 시작한다 • /ONESAMPLE TEST (write) WILCOXON(TESTVALUE=50) • /*일표본 샘플 검정을 하되 변수는 write이고 Wilcoxon 부호검 정을 하되, 테스트 값은 50으로 write의 미디언이 50인지를 검 정하라는 것 • /MISSING SCOPE=ANALYSIS USERMISSING=EXCLUDE • /CRITERIA ALPHA=0. 05 CILEVEL=95.
• setwd("c: /test") • hsb 2=read. csv("c: /test/hsb 2. csv") • wilcox. test(hsb 2$write, alternative='two. sided', mu=50, conf. level =0. 95) • /* 미디언 검정을 할 때에는 wilcox. test 함수를 이용한다. 그리 고 변수명을 쓰고 mu=50은 미디언이 50인지를 검정하라는 것 이다. • wilcox. test(hsb 2$write, mu=50)
• setwd("c: /test") hsb 2=read. csv("c: /test/hsb 2. csv") attach(hsb 2) hsb 2 <- within(hsb 2, { newfemale <- as. factor(female)}) levene. Test(write ~ newfemale, data=hsb 2, center="mean") • 분산의 동질성을 검정하는데 집단은 newfemale이고, 변수는 write이 다. 데이터는 female을 newfemale로 변환한 hsb 2이다. 결과에서 p가 0. 05보다 작기 때문에 아래의 var. equal=FALSE이 사용되었다. P가 0. 05보다 크면 var. equal=TRUE를 써야 한다 t. test(write~newfemale, alternative='two. sided', conf. level=. 95, var. equal=FALSE, data=hsb 2) • 두집단의 평균 비교를 하는데 집단은 newfemale이고 평균을 비교하 는 변수는 write이고, 데이터는 hsb 2이다
• setwd("c: /test") hsb 2=read. csv("c: /test/hsb 2. csv") t. test(hsb 2$write, hsb 2$read, paired=TRUE) • /* t. test 함수를 이용하되 paired=TRUE를 써서 대응표본 임을 명시 • library(Rcmdr) • 통계 평균 paired t 검정 • 변수선택
• npar test /m-w = write by female(0 1). *Nonparametric Tests: Independent • 분석-비모수검정-독립표본 검정필드에 writing 집단에 female 설정 누르고 Mann-Whitney
• setwd("c: /test") hsb 2=read. csv("c: /test/hsb 2. csv") attach(hsb 2) hsb 2 <- within(hsb 2, { newfemale <- as. factor(female)}) with(hsb 2, tapply(write, newfemale, mean, na. rm=TRUE)) wilcox. test(write ~ newfemale, alternative="two. sided", data=hsb 2) library(Rcmdr) 후에 데이터-활성 데이터셋에 있는 변수 관리하기 선택후에 수치변수를 요인으로 변환하기 female 선택후에 숫자사용하기 새로운 변수 newfemale로 저장하고 통계-비모수검정 - 이표본 wilcoxon • 선택기능에서 정규 근사 사용할 수 있음 •
• proc glm data = "c: /test/hsb 2"; class prog; model write = prog; means prog/scheffe; run;
- Slides: 27