שלומית גורדון משרד הבריאות

Post on 12-Jul-2015

421 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Tweaking the Model:

Proc Logistic and Beyond

Shulamit Gordon

Department of Health Information

Ministry of Health, Jerusalem, Israel

!!!תודות

ציונה חקלאי•

דמיטרי מוסטובוי•

כל צוות תחום מידע•

Who? What? Where? When? Why? How?

השאלה•

התשובה•

השלב הבא•

הבעיה•

הפתרון•

ראיה כללית

פטירות בבית חולים לאחר ניתוח•

לזהות גורמי הסיכון –

שירות\ללמוד איך יכולים לשפר הטיפול–

מאגר אשפוזים:מקור המידע

מנוהל בתחום מידע במשרד הבריאות•

בלתי מזוהה, פרטני•

:כולל מידע על•דמוגרפיה–

תנועות במחלקות–

נתונים על האשפוז–

אבחנות ופעולות–

אוכלוסיית המחקר

ח כלליים"מנותחים במשך שנתיים בבתי•

עברו הניתוח•

אזרחי ישראל•

שהו בבית החולים לפחות לילה אחד•

שנה ומעלה 15בני •

מנותחים 7,000 -כ כ"סה•

משתנים במודל

משתנים דמוגרפים•

קבוצות גיל–

מין–

משתני תחלואה•

ללא סרטן, רלסון'מדד צ–

עם גרורות, ללא גרורות ,ללא סרטן -סרטן–

אשפוז קודם בחודש האחרון–

ניתוח דומה בשנה האחרונה–

משתנים נוכחיים•

דחוף מהמיון או מוזמן–סוג כניסה –

אפיון הניתוח–

שיטת הניתוח–

מודל ארצי

proc logistic data=t ;

class .... ;

model

events/nn = age gender .... method

/ expb lackfit

;

by &by_vars. ;

run ; quit ;

למודל הארצי Proc Logisiticתוצאות

Odds RatioValueParameter

1.0015-39Age

2.0340-54

**4.3955-64

**7.4765-74

**13.9775-120

1.00FemaleGender

1.01Male

1.000-1Modified

**2.912+Charlson

1.00AMethod

**0.38B

1.00noFrom ER

**8.25yesPlanned

. . . .

C Statistic = 0.876

H-L G-o-F = 0.184

המודל הבסיסי

proc logistic data=t ;

class .... ;

model

events/nn = age gender ....

/ expb lackfit

;

by &by_vars. ;

score out=t_out ;

run ; quit ;

יחידה+ המודל בסיסי

proc logistic data=t ;

class .... unitcode ;

model

events/nn = age gender... unitcode

/ expb lackfit

;

by &by_vars. ;

score out=t_out ;

run ; quit ;

Original Variables

Unit Codes

נוסף PROC LOGISTIC+ מודל בסיסי

Taking the output of the basic model,

data t_out ; set t_out ;

the_beta = log(p_event / p_nonevent) ;

run ;

proc logistic data=t_out ;

class unitcode / ref=first ;

model

events / nn = unitcode the_beta

/ expb lackfit

;

by &by_vars. ;

run ; quit ;

Unit Codes

Original Variables

Original VariablesUnit Codes

הרעיון

-כדי ש u buלמצוא לכל יחידה

uunitinipatients

ui

uunitinipatients

i ExpectedActual

___

___

b

uunitinipatients

i

uunitinipatients ii

i yEventPeEventP

EventPeu

u

___

___ __1

_0

b

b

מרשם העוגה

Ingredients :

1 cup butter, at room temp.

2 cups sugar

3 cups sifted self-rising flour

4 eggs

Preheat oven to 350 degrees F.

מרשם המאקרו

Ingredients :

1 proc datasets

2 proc transpose

3 proc sql

4 data steps

Stir gently, ...

הקריאה למאקרו

%esg_tweak_logistic_wide(

f_in = t_out,

p_var = p_event,

events_var = events,

nn_var = nn,

by_Groups = &by_vars. unitcode,

lo = -100 ,

hi = 100 ,

n_iter = 100 ,

f_out = t_tweak,

out_var = tweak_beta

) run ; quit ;

זמני החישוב

0.1

1.0

10.0

100.0

1,000.0

1 10 100 1000 10000 100000 1000000

width of data

tim

e (

se

co

nd

s)

2 16 128 1024 8192 65536 524288

חישוב משמעותFrom Probability 101, for each unit u,

using the output of the BASIC MODEL

uunitinipatients

ii

uunitinipatients

i

uunitinipatients

i

u

NonEventPEventP

EventPy

z

___

___

___

__

_

uu zPValue 12

חישוב סטטיסטיקות המודל

Preparing the data:

%let bb = &by_vars. unitcode ; run ;

proc sort data= t_out ; by &bb ; run ;

proc sort data= t_tweak ; by &bb ; run ;

data t_new ; merge t_out t_tweak ; by &bb ; run ;

data t_new ; set t_new ;

O_R1 = p_event / (1-p_event) ;

O_R2 = exp(tweak_beta) ;

O_R = O_R1 * O_R2 ;

p_new = O_R / (1+O_R) ;

beta_new = log(O_R) ;

run ; quit ;

Using Proc Logistic:

proc logistic data=t ;

model

events / nn = the_beta

/ lackfit

;

by &by_vars. ;

run ; quit ;

חישוב סטטיסטיקות המודל

Using Macros:

%esg_g_c_stats(

f = t_new, f_out = t_c,

events_var = events, nn_var = nn,

p_var = p_new, n_bins = 500,

by_vars = &by_vars.

) run ; quit ;

%esg_g_HosmerLemeshow(

f = t_new, f_out = t_HL,

events_var = events, nn_var = nn,

p_var = p_new, grps = 10,

by_vars = &by_vars.

) run ; quit ;

חישוב סטטיסטיקות המודל

השוות המודלים

C STATISTICהמודל

0.8758(עם שיטת הניתוח)מודל ארצי

0.8706מודל בסיסי

0.8792מודל בסיסי עם יחידה

0.8785נוסף PROC LOGISTIC+ מודל בסיסי

TWEAKING 0.8786+ מודל בסיסי

:בסיכום:אחד אחרי השניניתן ליישם השיטה על מספר משתנים

Proc Logistic

Tweak with var1

Update t_out

Tweak with var2

Update t_out

Tweak with var3

Update t_out

. . . Calculate additional statistics

המלצה

!!!תהיו בריאים

תודה רבהshulamit.gordon@moh.health.gov.il

Algebra

OR

ORp

p

pOR

11

bep

pOR

orig

orig

new

1

b

b

ep

p

ep

p

OR

ORp

orig

orig

orig

orig

new

newnew

11

1

1

origorig

orig

newpep

pep

b

b

1

top related