proc freq data = "c:/test/hsb2";

Slides:



Advertisements
Similar presentations
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
Advertisements

1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
제 7 장 표본분포. 표본분포 통계량의 확률분포 표본분포 (sampling distribution) 통계량 (statistic) 표본자료의 함수 즉 모집단 … … 표본 표본추출 … … 통계량 계산.
Proc freq data = "c:/test/hsb2"; /* c 디렉토리의 test 폴더에 hsb2 데이터를 이용하여 freq 라는 sas 의 procedure 를 실행한다 tables female / binomial(p=.5); /* tables 는 freq 의 대상.
출석수업 과제 – 총 5문제, 10월 25일 제출 정보통계학과 장영재 교수.
제13장 로지스틱회귀분석.
재료수치해석 HW # 박재혁.
제 7 장 함수 사용을 통해 엑셀 정복하기.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
표본분포 Sampling Distribution
4.3.3 초기하분포 (Hypergeometric distribution)
PASW 17.0 활용하기 일시 : , (PM) 6:30-10:30 장소 : 삼성암센터 (지하1층 세미나실2)
3일차 - 가설검정.
고장률 failure rate 어떤 시점까지 동작하여 온 품목이 계속되는 단위기간내에 고장을 일으키는 비율(횟수). 고장률은 확률이 아니며 따라서 1 보다 커도 상관없다. 고장이 발생하기 쉬운 정도를 표시하는 척도. 일반으로 고장률은 순간고장률과 평균고장률을 사용하고 있지만.
각 행 (row) 에서 같은 첨자가 있는 곳은 비워두고, 그 밖에 cell에 수준수 (level) 또는 반복수를 기입
Excel 일차 강사 : 박영민.
Ⅱ. 측정(Measure) (2) Gage R&R (Crossed) – ANOVA 방법 [1] Data 입력
자료분석 및 통계활용.
비모수통계.
통계분석 특강(속성) 서구원 한양사이버대학교 미디어MBA.
제12주 회귀분석 Regression Analysis
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 12. 포인터의 이해.
모수 통계학과 비모수 통계학 Parametric Statistics, NonParametric Statistics
Keller: Stats for Mgmt & Econ, 7th Ed 표본분포 Sampling Distributions
비모수 분석 및 복습.
SPSS 이용한 논문 통계 강좌 우송대학교 IT 경영학과 하임숙
Chapter 07. 기본 함수 익히기.
CH 4. 확률변수와 확률분포 4.1 확률 확률실험 (Random Experiment, 시행, Trial) : 결과를 확률적으로 예측 가능, 똑 같은 조건에서 반복 근원사상 (Elementary Event, e) : 시행 때 마다 나타날 수 있는 결과 표본공간.
ANOVA.
상관분석 (p , p ).
SPSS - Statistics - AMOS
프로그래밍 개요
인터넷응용프로그래밍 JavaScript(Intro).
SPSS 강원대학교 생물학과 석사 과정생 김자경.
(independent variable)
1. 비모수 검정 모수 통계학과 비모수 통계학 모수통계학 (Parametric Statistics) 에서는 표본이 추출된 모집단의 분포에 대한 가정이 꼭 필요 하지만 질적자료나 모집단의 분포에 대한 가정이 필요 없는 양적 자료의 경우에는 모수통계학을 적용할 수 없음 이때는.
8장. spss statistics 20의 데이터 변환
두 모집단에 대한 검정.
단순회귀분석 (Simple Linear Regression Analysis)
Multiple regression analysis
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
논문작성을 위한 연구모형 설정 양동훈.
Keller: Stats for Mgmt & Econ, 7th Ed 회귀모형의 정형화 Model Building
Week 3-2: 데이터분포 3_2장_1(백분율:Percentile)에서 동영상 1,2
제3장 함수와 배열수식 전진환
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
Chapter 4: 통계적 추정과 검정 Pilsung Kang
Sampling Distributions
Intelligent Systems and Control Lab. Dept. of EE, Yeungnam Univ.
제 15 강 문자와 코드 shcho.pe.kr.
에어 PHP 입문.
자녀의 심리적 안정도에 미치는 부모요인 분석.
Chapter 10 데이터 검색1.
함수, 모듈.
최소의 실험 횟수에서 최대의 정보를 얻기 위한 계획방법 분석방법: 분산분석(Analysis of Variance, ANOVA)
비교분석 보고서 Template 2015.
상관계수.
Week 4: 다변수(2변수) 데이터분석 5장_1(산포도: scatter plot) 동영상 1,2,3,4,5
2015년도 2학기 제 10 장 기술통계와 도수분포 마케팅조사.
통계학 R을 이용한 분석 제 2 장 자료의 정리.
제 8장 일반화 선형모형 회귀분석, 분산분석, 다변량분산분석 및 부분 상관분석이 가능 GLM 절차
CH3. 데이터의 기초적 정리방법 모집단과 표본 모집단 (Population) , 표본 (Sample, 시료) 그림 3.1
CH3. 데이터의 기초적 정리방법 모집단과 표본 모집단 (Population) , 표본 (Sample, 시료) 그림 3.1
9장. spss statistics 20의 데이터 변수계산
CH4. 반복이 없는 이원배치법 ( Two-way ANOVA)
 6장. SQL 쿼리.
문제의 답안 잘 생각해 보시기 바랍니다..
Report #2 (기한: 3/16) 데이터 구조 과목의 수강생이 50명이라고 가정한다. 이 학생(학번은 2016????으로 표현됨)들의 중간 시험(0~100), 기말 시험(0~100) 성적을 성적 파일에 작성하라(프로그램을 통해서 또는 수작업으로). 성적 파일을 읽어들여서.
6 객체.
(Analysis of Variation, ANOVA)
Presentation transcript:

proc freq data = "c:/test/hsb2"; /* c 디렉토리의 test폴더에 hsb2 데이터를 이용하여 freq라는 sas의 procedure를 실행한다   tables female / binomial(p=.5); /* tables는 freq의 대상 변수를 지정하는 것으로 여기에서는 tables female 이기 에 female이 대상변수가 된다. /* /는 옵션을 지정할 때 사용하는 것 binomial은 sas의 함수로 이항분포함수를 의미하는 것으로 p=0.5는 그 확률이 0.5인지를 검정하도록 지정한다. 0.5는 female 변수의 0 또는 먼저 코딩된 값의 비율을 의미한다   exact binomial; /* 이항함수분포의 정확검정도 시도해봐라 run; 정확검정의 양측검정 p값을 보아야 0.2292

npar tests Spss에서 비모수 검정을 시작할 때 사용, NPTESTS도 사용됨 /binomial (.5) = female. 0.5는 female 변수의 0 또는 먼저 코딩된 값의 비율을 의미한다 이항분포함수의 p=0.5인지 검정하는 것으로 변수는 = 다음에 나오므로 해당 변 수는 female이다 주의할 점은 끝에 점이 있다 분석-비모수 검정-일표본 필드에서 female을 선택하고, 설정에서 관측확률과 가설값 비교(카이제곱검정을 선택하고 옵션은 50:50이므로 변경하지 않는다. 만일 60: 40이면 별도로 입력하 여야 함다.

setwd("c:/test") hsb2=read. csv("c:/test/hsb2 setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) table(female) chisq.test(table(female))  library(Rcmdr) 후에 데이터-활성 데이터셋에 있는 변수 관리하기 선택후에 수치변수를 요인으로 변환하기 female 선택 후에 숫자사용하기 newfemale 새로운 변수로 저장하고 통계-요약-빈도분포 female 선택후에 카이제곱 적합성 검정(오직하나의 변수) 클릭 후 예 비율을 입력할 수 있음

setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) table(female) probs<-c(0.6,0.4) 0.6과 0.4라는 (행벡터) 값을 probs라는 변수로 저장하라 chisq.test(table(female),p=probs) Female이라는 빈도를 계산 후에 chisquare검정을 하는데, 확률 p는 probs변수에 있는 (행벡터) 값을 사용한다. R의 경우는 sas와 spss와 달리, 두개의 기대 확률을 모두 써야 계산 이 된다

proc freq data = "c:/test/hsb2"; /* c 디렉토리의 test폴더에 hsb2 데이터를 이용하여 freq라는 sas의 procedure를 실행한다 tables race / chisq testp=(10 10 10 70); /* tables는 freq의 대상 변수를 지정하는 것으로 여기에서는 tables race이기에 race가 대상변수가 된다. /는 옵션을 지정할 때 사용하는 것 Chisq는 카이스퀘어 통계량을 계산하라는 명령 testp=(10 10 10 70)는 4개 범주의 상대빈도 가정이 맞는지 검정을 하라는 명령 run;

npar test Spss에서 비모수 검정을 시작할 때 사용, NPTESTS도 사용됨 /chisquare = race Chisquare 검정을 하되 변수는 = 다음에 나옴. 이경우는 race가 chisquare 검정을 하는 변수임 /expected = 10 10 10 70. 기대빈도는 순서대로 다음과 같다 주의할 점은 끝에 점이 있다 분석-비모수 검정 race만 남겨둠 설정에서 카이제곱검정에서 옵션을 누르 10 10 10 70을 순서대로 입 력

proc freq data = "c:/test/hsb2"; /* c 디렉토리의 test폴더에 hsb2 데이터를 이용하여 freq라는 sas의 procedure를 실행한다   tables schtyp*female / expected chisq;   /* tables schtyp*female 는 schtyp을 행에 female 을 열에 놓 고 빈도수를 세는 것 / expected chisq; /* expected는 기대빈도를 출력 chisq는 카이스퀘어 통계량을 계산하는 것; run;

Crosstabs /* sas의 proc freq와 유사한 것  /tables = schtyp by female /*tables는 표를 만들라는 명령어, 앞에 나오는 것이 행, 뒤에 나오는 것이 열이고 sas는 *를 사용했지만 spss는 by를 사용  /statistic = chisq. /*카이스퀘어 통계량을 프린트 하는 것 분석-기술통계-교차분석 통계량 카이제곱 셀 기대빈도

setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) /*이는 sas의 data=과 유사한 기능 table(schtyp, female) /*빈도수를 세는 것으로 행렬을 지정 chisq.test(schtyp, female) /*chisq.test는 카이스퀘어 검정을 하라는 함수 fisher.test(schtyp, female)

library(Rcmdr) 후에 데이터-활성 데이터셋에 있는 변수 관리하기 선택후에 수치변수를 요인으로 변환하기 female 선택후에 숫자사용하기 새로운 변수 newfemale로 저장 하고 schtyp 선택후에 숫자사용하기 새로운 변수 newschtyp로 저장 하고 통계-분할표-이원표 변수 선택 통계를 눌러 fisher exact 검정을 할 수 있음

단일 표본에서 평균 차이가 있는가 write라는 변수의 평균이 50과 통계적으로 다른가 하는 테스트 proc ttest data = "c:/test/hsb2" h0 = 50; /* proc ttest는 ttest 프로시져를 하라는 것 ttest 프로시져는 t 검정 을 하는 프로시져 /* h0 = 50는 귀무가설의 평균이 50임을 지정 var write; /* 변수를 지정하는 것으로 변수를 지정할 때 ttest 프로시져는 var를 사용한다 var 를 쓴 다음에 변수명을 쓰면 된다 run;

t-test /* sas의 proc ttest와 동일 /testval = 50 /*sas의 h0=50과 동일, test value의 줄임말 /variable = write. /*sas의 var write;와 동일

setwd("c:/test") hsb2=read. csv("c:/test/hsb2. csv") t setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") t.test(hsb2$write, alternative='two.sided', mu=50,conf.level=0.95) /* hsb2$write는 hsb2 데이터에 있는 write 변수를 t 검정을 하 는 것, alternative='two.sided',는 양측검정을 하는 것, mu=50는 평균이 50을 검정하라는 것, conf.level=0.95는 신뢰수준이 95% 라는 것 t.test(hsb2$write, mu=50)

후에 데이터셋 활성화하고, 통계-평균-일표본 T 검정 write 선택하고 mu에 50쓰기

proc univariate data = "c:\test\hsb2"; /*var write; var를 쓰고 변수명을 쓰면 된다 proc univariate data = "c:\test\hsb2" loccount mu0 = 50; /* loccount mu0 = 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") hsb2=read.csv("c:/test/hsb2.csv") wilcox.test(hsb2$write,alternative='two.sided',mu=50,conf.level =0.95) /* 미디언 검정을 할 때에는 wilcox.test 함수를 이용한다. 그리 고 변수명을 쓰고 mu=50은 미디언이 50인지를 검정하라는 것 이다. wilcox.test(hsb2$write,mu=50)

proc ttest data = "c:/test/hsb2"; /* 두개의 독립 표본의 평균 차이를 할 때에도 proc ttest 사용, 두개 의 독립표본이란 남자와 여자 표본을 의미 class female; /* 표본이 female이라는 것으로 구분, class female이란 female 변수 값 별로 평균 비교를 한다는 뜻 var write; /*평균차이를 볼 변수는 write run; 결과에서 Equality of Variances의 p 값이 0.05보다 크면 Pooled, 0.05 보다 작으면 Satterthwaite로 보아야 한다

t-test groups = female(0 1) /* 평균 차이 검정을 하는데 집단은 female 변수에 있고 현재 female 변수의 값은 0과 1로 되어 있다 /variables = write. /* 평균을 비교하는 변수는 write이다

setwd("c:/test") hsb2=read. csv("c:/test/hsb2 setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) hsb2 <- within(hsb2, { newfemale <- as.factor(female)}) leveneTest(write ~ newfemale, data=hsb2, center="mean") 분산의 동질성을 검정하는데 집단은 newfemale이고, 변수는 write이 다. 데이터는 female을 newfemale로 변환한 hsb2이다. 결과에서 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=hsb2) 두집단의 평균 비교를 하는데 집단은 newfemale이고 평균을 비교하 는 변수는 write이고, 데이터는 hsb2이다

11월 10일 자료 1 게시판 20 21에 있는 세개 파일 다운 받아 c:\test에 저장

대응표본 proc ttest data = "c:/test/hsb2" ; paired write*read; run; /* 다만 대응 표본인 경우는 class 변수명을 하지 않고 paired를 사용한 후 변수명*변수명을 하면 됨

T-TEST PAIRS=read WITH write. /* t 검정을 하되 pairs는 대응표본임을 명시하고 변수 사이에 with를 씀

setwd("c:/test") hsb2=read. csv("c:/test/hsb2. csv") t setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") t.test(hsb2$write,hsb2$read,paired=TRUE) /* t.test 함수를 이용하되 paired=TRUE를 써서 대응표본 임을 명시 library(Rcmdr) 통계 평균 paired t 검정 변수선택

Wilcoxon-Mann-Whitney test (1독립변수 2 독립적 그룹 종속변수는 순위변수) 종속변수가 순서변수, 1등급, 2등급 등 proc npar1way data = "c:/test/hsb2" wilcoxon; /* 비모수 검정 프로시저 npar1way 사용, wilcoxon 두 샘플 테 스트 사용 class female; var write; run; 정규분포 접근 z 검정을 사용하여야 함

npar test /m-w = write by female(0 1). /* 옵션에서 man whitney 통계량을 계산하고 종속변수는 write이고 집단변수는 femal인데 female은 0과 1로 코딩되어 있고, 이를 표시 하기 위해 by를 사용 *Nonparametric Tests: Independent 분석-비모수검정-독립표본 검정필드에 writing 집단에 female 설정 누르고 Mann-Whitney

setwd("c:/test") hsb2=read. csv("c:/test/hsb2 setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) hsb2 <- within(hsb2, { newfemale <- as.factor(female)}) with(hsb2, tapply(write, newfemale, mean, na.rm=TRUE)) wilcox.test(write ~ newfemale, alternative="two.sided", data=hsb2) /*wilcox.test 이지만 sas의 wilcoxon 통계량이 아닌 MW 통계량을 보여주고 있음 library(Rcmdr) 후에 데이터-활성 데이터셋에 있는 변수 관리하기 선택후에 수치변수를 요인으로 변환하기 female 선택후에 숫자사용하기 새로운 변수 newfemale로 저장하고 통계-비모수검정 - 이표본 wilcoxon 선택기능에서 정규 근사 사용할 수 있음

proc glm data = "c:/test/hsb2"; /* sas에서 평균 비교의 일반적인 프로시져는 glm class prog; /* class는 집단의 변수를 지정하는 것 model write = prog; /* proc glm은 꼭 model이라는 용어를 사용하고 바로 뒤에 나오는 것이 종속변수이고 = 다음에 집단변수가 나와야 한다 means prog/scheffe; /* Prog별 평균을 나타내고, 사후분석을 scheffe 방식으로 하라는 것 을 지정한다 run;

oneway write by prog /POSTHOC=SCHEFFE. /* 꼭 마지막에는 .이 있어야 함 분석-평균비교-일원배치분산분석 사후분석

hsb2=read. csv("c:/test/hsb2 hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) library(agricolae) model<-aov(write~prog, data=hsb2) comparison <- scheffe.test(model,"prog", group=TRUE,console=TRUE)

proc corr data = "c:/test/hsb2";   var read write; run; /* sas에서 상관계수를 얻으려면 proc corr 프로시져를 사용한 다. Proc corr 다음에는 var가 오고 var 다음에 상관분석을 하고 싶은 변수를 쓴다 proc corr data = "c:/test/hsb2";   var female write; run;

correlations /variables = read write. /*spss에서 상관분석을 하기 위해서는 correlations라는 함수를 이용하고 옵션에서 변수명을 지정하기 위하여 /variables 를 사 용하고 =를 붙인 후에 변수명을 쓰고 마침표를 하면 됨 분석-상관분석-이변량 상관 분석

setwd("c:/test") hsb2=read. csv("c:/test/hsb2 setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) plot(read,write) /* read는 x 축에 나오고, write는 y 축에 나옴 abline(lm(write~ read)) /*lm은 linear model의 약자로 선형모델분석으로 write는 y, read는 x 가 됨, abline 선을 그리는 것 cor.test(read,write) /* 상관계수를 얻으려면, cor.test 함수를 이용하고 변수사이에 콤마 를 쓰면 됨 cor.test(female,write)

비모수 상관계수 proc corr data = "c:/test/hsb2"; var read write; proc corr data = "c:/test/hsb2" spearman; run; /* proc corr 문에서 spearman이라는 옵션만 추가하면 됨

비모수 상관분석 nonpar corr /variables = read write /print = spearman. 비모수 상관을 하려면 nonpar corr (Nonparametric correlation) /varables 다음에 =를 하고 변수 명을 쓴 후 /print=spearman은 비모수상관계수를 출력하라는 것 nonpar corr /variables = read write. 위만으로도 충분

비모수 상관분석 setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) cor.test(read,write,method="spearman") 비모수상관을 하려면 cor.test함수를 이용하고 괄호안에 변수를 쓰되 콤마로 구분하고 method="spearman“을 써서 비모수 상 관을 명시한다

단순 선형회귀 proc reg data = "c:/test/hsb2"; model write = read / stb; run; Sas에서 회귀를 하려면 proc reg라는 프로시져를 이용하고 proc reg 다음 문장은 model을 쓴다 Model 다음에 나오는 변수가 종속변수(y)이고 종속변수 다음에 =를 쓰고 독립변수 (x)를 쓴다. 두가지 이상 변수가 있을 때 상 대적인 영향력의 크기를 알려면 /stb를 쓴다 . Standardized beta

단순 선형회귀 regression variables = write read /dependent = write /method = enter. Spss에서 회귀를 하려면 regression을 쓰고 variables= 다음에 변수들을 모두 쓰고 /dependent=를 쓴 후 종속변수를 쓰면 (독립변수는 당연히 지 정되고) /method=enter.를 붙여야 일반적인 회귀분석이 된다.

단순 선형회귀 setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) reg1 <- lm(write ~ read,data=hsb2) 회귀를 하려면 lm이라는 함수를 이용하고 linear model 종속변 수를 먼저쓰고 다음에 ~ 쓴 후 독립변수를 쓴다. Data=hsb2는 데이터가 hsb2를 의미한다 <-는 회귀분석을 한 후에 그것은 왼쪽에 있는 개체로 저장하라 는 뜻이다 summary(reg1) reg1의 요약정보를 프린트 하라는 것

다중회귀 proc reg data = "c:/test/hsb2";  model write = female read math science socst / stb; run; 단순회귀와 다른점은 복수의 독립변수를 쓰고 있다는 점이다

다중회귀 regression variable = write female read math science socst /dependent = write /method = enter. 단순회귀와 다른 점은 regression variable = 이후에 독립변수만 추가된 점이다

다중회귀 setwd("c:/test") hsb2=read.csv("c:/test/hsb2.csv") attach(hsb2) reg1 <- lm(write ~ female+read+ math +science+ socst,data=hsb2) 다중회귀에서 변수를 추가할 때에는 +를 쓰고 추가한다 summary(reg1) 표준화계수를 얻을려면 QuantPsyc 패키지를 설치한 후 QuantPsyc 라이브러리를 이용을 한후 lm.beta 함수를 이용하면 된다 install.packages("QuantPsyc") library(QuantPsyc) lm.beta(reg1)