사이트맵  |  Contact Us
 
홈 > SAS Tech & Tip > SAS University Edition
[SAS University Edition] 로지스틱 회귀 분석(2) (Logistic Regression) 2019.06.20
박세훈 388 0
http://www.mysas.co.kr/sas_tiptech/d_university_edition.asp?b_no=11121&cmd=content&bd_no=36

Logistic Regression

 

1. Introduction

이번에도 지난시간에 이어서 Logistic 회귀 실습을 진행해보겠습니다. 이번에는 모든 변수를 사용하여 Logistic을 구현하고, 교차 효과를 적용하고 그래프를 그려보겠습니다.

 

2. Data

저번 시간과 동일한 데이터를 사용하겠습니다.

 

<code1>

data Survival;

input ID Status Shock Malnutrition Alcoholism Age BowelInfarction;

datalines;

1 0 0 0 0 56 0

2 0 0 0 0 80 0

3 0 0 0 0 61 0

4 0 0 0 0 26 0

5 0 0 0 0 53 0

6 1 0 1 0 87 0

7 0 0 0 0 21 0

8 1 0 0 1 69 0

9 0 0 0 0 57 0

10 0 0 1 0 76 0

11 1 0 0 1 66 1

12 0 0 0 0 48 0

13 0 0 0 0 18 0

14 0 0 0 0 46 0

15 0 0 1 0 22 0

16 0 0 1 0 33 0

17 0 0 0 0 38 0

18 0 0 0 0 27 0

19 1 1 1 0 60 1

20 0 0 0 0 59 1

21 1 1 0 0 63 1

22 1 1 1 0 70 0

23 1 0 0 1 49 0

24 0 1 0 0 50 0

25 1 1 1 0 70 0

26 1 0 0 1 49 0

27 1 1 0 0 78 1

28 0 0 1 1 60 0

29 0 0 0 1 60 0

30 1 1 0 0 78 1

31 0 0 0 0 28 1

32 0 0 0 0 80 0

33 0 0 0 0 59 1

34 1 0 1 0 50 1

35 1 0 1 0 68 0

36 0 0 0 0 74 1

37 0 0 1 0 27 0

38 1 0 1 1 66 1

39 1 1 1 0 76 0

40 1 0 0 1 70 1

41 0 0 0 0 36 0

42 0 0 0 0 52 1

43 0 0 0 0 30 1

44 1 1 0 1 60 0

45 0 0 1 1 54 0

46 0 0 0 0 65 0

47 1 0 0 0 47 0

48 0 0 1 1 42 0

49 0 0 0 0 22 0

50 0 1 1 0 44 0

;

위 코드를 이용하여 데이터 셋을 생성합니다. University Edition에서 바로 생성해도 되고, SAS BASE를 이용하여 생성 후에 Import해도 됩니다.

 

 

 

3. Logistic Regression

저번 시간에는 단변량 분석을 통해 Logistic 회귀를 구현해 보았습니다. 이번 시간에는 Full Model 실습을 진행하겠습니다.

 

3.1 모델 생성

 

작업선형 모델이진 로지스틱 회귀

데이터▶Work.sepsis

역할반응 변수▶Status 추가, 관심이벤트▶1 선택

역할설명변수연속 변수▶ Shock, Malnutrition, Alcoholism, BowelInfarction

상단의 모델” ▶사용자 정의 모델변수 전부 선택

 

<code2>

proc logistic data=WORK.SURVIVAL;

      model Status(event='1')=Shock Malnutrition Alcoholism BowelInfarction Age/

            link=logit technique=fisher;

run;

마찬가지로 코드에도 모든 변수를 추가합니다.

 

분석결과를 보면 카이스퀘어 검정을 통해 변수의 유의성을 확인할 수 있습니다. Age, Shock, Alcoholism이 설명에 있어 중요한 변수가 됩니다. 위의 추정된 계수들을 통해 최종적인 Logistic 회귀식을 세울 수 있습니다.

 

 Second Example

 

4. data

데이터는 Goldberg의 정실 질환 설문으로부터 기록된 데이터입니다. GHQGeneral Health Questionnaire를 말합니다. GHQ_Score는 정신 상태 점수를 말합니다.

 

<code3>

data GHQ;

input GHQ_Score Sex$ n cn;

label n="Number of Case" cn="Number of Non-Case";

datalines;

 

0 F 4 80

1 F 4 29

2 F 8 15

3 F 6 3

4 F 4 2

5 F 6 1

6 F 3 1

7 F 2 0

8 F 3 0

9 F 2 0

10 F 1 0

0 M 1 36

1 M 2 25

2 M 2 8

3 M 1 4

4 M 3 1

5 M 3 1

6 M 2 1

7 M 4 2

8 M 3 1

9 M 2 0

10 M 2 0

;

분석을 위해 파라미터를 생성해보겠습니다. PrCase라는 변수, 총 사례 발견 횟수를 총 관찰 횟수로 나눈 값과 Total이라는 변수, 총 관찰 횟수를 정의하겠습니다. 생성 코드는 다음을 참고하시면 됩니다.

<code 4>

DATA GHQ_New;

set GHQ;

total = n+cn;

prcase=n/total;

run;

이제 GHQ_NEW 데이터를 통해 분석을 진행하도록 하겠습니다.

 

5. EDA

Scatter Plot을 그려서 데이터 탐색을 해보겠습니다.

작업그래프산점도

데이터▶GHQ_NEW

역할▶X– GHQ_Score, Y– prcase , 그룹 – SEX

<code5>

 

ods graphics / reset width=6.4in height=4.8in imagemap;

 

proc sgplot data=WORK.GHQ_NEW;

      scatter x=GHQ_Score y=prcase / group=Sex markerattrs=(symbol=CircleFilled);

      xaxis grid;

      yaxis grid;

run;

ods graphics / reset;

그래프를 쉽게 보기 위해 markerattrs 옵션을 추가해주었습니다.

 

Logistic의 시그모이드와 비슷한 형태로 나왔습니다.

 

6. Grouped Logistic Model

이 그룹화된 두 성별 변수를 구분하여 Logistic을 구현해 보겠습니다. 또한 두 변수에 대한 교차 작용도 알아보겠습니다.

첫 번째 모델은

데이터반응 데이터는 이벤트 시행 횟수로 구성됩니다.박스 체크

데이터이벤트 개수▶n 추가 (Number of Case 변수)

데이터시행 횟수▶ total 추가

데이터설명변수분류변수▶sex 추가, 효과 모수화참조 코딩 선택

데이터설명변수연속변수▶GHQ_Score 추가

모델사용자 정의 모델두 변수 동시 선택완전 팩토리얼 선택

옵션도표기본 및 추가 도표 선택효과도표 선택

실행

<code6>

ods noproctitle;

ods graphics / imagemap=on;

 

proc logistic data=WORK.GHQ_NEW plots=(effect);

      class Sex / param=ref;

      model n / total=GHQ_Score Sex GHQ_Score*Sex / link=logit technique=fisher;

run;

 

 

두 번째 모델은, 위에서 GHQ_Score*Sex 변수를 제외시켜주면 됩니다.

모델사용자 정의 모델▶GHQ_Score*Sex 삭제

실행

 

6.1 비교

 

 

좌측은 Fulled Model이고, 우측은 교차 작용이 제외된 모델입니다. 모델 효율을 따져 보았을 때 교차 작용을 제외하는 것이 효율적으로 보입니다. (유의확률이 0.129이므로)

 

 

 

좌측은 Fulled 모델이고, 우측은 교차작용을 제외한 모델입니다. 그림으로만 보기에도, 교차작용을 제외한 모델이 그룹 간의 편향과 편차가 적어 보입니다.

 

 

7. Conclusion

University Edition의 큰 장점은 몇 번의 클릭으로 다양한 옵션과 파라미터를 조정할 수 있는 것입니다. 물론 코딩 또한 그리 복잡하지 않지만, 편한 인터페이스를 통해 분석 효율을 올려준다고 느낍니다. 다음 시간에는 11 Matched 연구 데이터에 대한 Logistic 실습을 진행해보겠습니다.

 

 
 
휴대폰 번호
휴대폰 인증번호
 

 더 이상 글이 존재하지 않습니다.

 [SAS University Edition] 로지스틱 회귀 분석(1) (Logistic Regression)