유병 환자수와 발생 환자수 계산
1. 용어 정의
● ●대상 질환이 연구기간 동안 대상 집단에서 확인되거나, 새로 발생하는 비율로 질환의 규모, 위험도등을측정할때활용됨 ▶연구수행과정에서실질적인분석을실시하기전,기초통계량등을산출하고자할때주로 사용됨 ● ●유병률과 발생률은 동시에 언급되는 경우가 많지만 개념은 서로 다르므로 활용 목적에 따라 구분하여활용해야함 ▶유병률:연구기간동안대상집단에서대상질환을가지고있는인구비율로연구기간전에 질환이발생한인원도포함됨 ▶발생률:연구기간동안대상집단에서대상질환이새로발생한인구비율로연구기간내에 질환이새로발생한인원만포함됨 ● ●본가이드에서는‘원격접속통계분석시스템’에서유병률과발생률산출을위한유병환자수와 발생환자수를계산하는일반적인방법을안내하고자함2. 자료 범위 결정
● ●유병,발생환자수를계산하고자하는대상질환이속한상병변수의범위에따라자료셋팅이 달라짐 ▶대상질환이주상병,제1부상병에있는경우를기준으로한다면200테이블(명세서일반내역) 만 필요하지만, 후순위 부상병에 있는 경우까지 포함한다면 400테이블(수진자 상병 내역) 연계한셋팅이필요함1) 200테이블만 활용하는 경우(주상병, 제1부상병)
● ●200테이블은‘원격접속통계분석시스템’에탑재된데이터셋중파일명이‘t200_’으로시작되는 데이터셋이며,이에대한설명은‘resvarinfo_200'에서확인할수있음 ①200테이블 ②200테이블변수설명● ●주상병코드(MAIN_SICK)과부상병코드(SUB_SICK)에대상질환이기재된명세서를추출 ▶그림2와같은명령문을대상질환이나필요한변수들에따라변경하여필요한명세서추출 [그림 2] 200테이블에서대상질환이기재된명세서추출프로그램(예시) /*●@는●계정에●따라●다르며,●접속●시●확인●가능함●*/ libname●tt●'/vol/userdata@/users/sta_room@@@'; /*●①주상병●또는●부상병코드가●‘J06'으로●시작되는●명세서●추출●*/ proc●sql; create●table●j06a●as select●mid,●jid,●main_sick,●sub_sick,●recu_fr_dd from●tt.t200_ex●
where●main_sick●like●'J06%'●or●sub_sick●like●'J06%'; quit; /*●②주상병코드만●‘J06'으로●시작되는●명세서●추출*/ proc●sql; create●table●j06b●as select●mid,●jid,●main_sick,●recu_fr_dd from●tt.t200_ex
where●main_sick●like●'J06%'; quit;
●
●그림2의명령문을활용하여추출한결과는그림3과같음
①주상병또는부상병코드가‘J06'으로시작되는명세서추출결과
▶400테이블은 200테이블과 그림 5와 같은 형태의 차이가 있으며, 제1부상병 외에 모든 상병들이기재되어있음
2) 200테이블과 400테이블을 연계하여 활용하는 경우(모든 상병)
● ●400테이블은‘원격접속통계분석시스템’에탑재된데이터셋중파일명이‘t400_’으로시작되는 데이터셋이며,이에대한설명은‘resvarinfo_400'에서확인할수있음 [그림 4]400테이블과변수설명(예시) ①400테이블 ②400테이블변수설명● ●400테이블은 수진자개인식별대체키(JID)와 요양개시일자(RECU_FR_DD)가 없어, 명세서 조인키(MID)를활용하여200테이블을연계후에대상질환이있는명세서를추출함 [그림 5]200테이블과400테이블형태의차이 1.200테이블은10번명세서에있는주상병(MAIN_SICK)과제1부상병(SUB_SICK)만기재됨 2.400테이블은10번명세서에있는모든상병들이기재되며,상병의순위(SICK_SNO)가매겨짐 ①:주상병,②:제1부상병,③~:나머지상병 [그림 6] 400테이블에서대상질환이기재된명세서추출프로그램(예시) /*●‘AJ06'으로●시작되는●명세서●추출●*/ proc●sql; create●table●j06c●as select●t1.mid,●t2.jid,●t1.sick_cd,●t2.recu_fr_dd
from●tt.t400_ex●t1●left●join●tt.t200_ex●t2●on●(t1.mid●=●t2.mid)
where●t1.sick_cd●like●'AJ06%'; quit;
3. 유병 환자수 계산
● ●앞서대상질환이기재된명세서만추출한데이터에서요양개시일자(RECU_FR_DD)를활용하여 유병률산출기간에해당하는명세서추출 ● ●그림6의명령문을활용하여추출한결과는그림7과같음 [그림 7] 400테이블에서대상질환이기재된명세서추출결과(예시) /*●‘J06’으로●진료받은●명세서●중●2017년●명세서●추출●*/ proc●sql; create●table●j06_2017_pre●as select●mid,●jid,●sick_cd,●recu_fr_dd from●j06cwhere●recu_fr_dd●between●'20170101'●and●'20171231'; quit;
4. 발생 환자수 계산
● ●앞서대상질환이기재된명세서만추출한데이터에서요양개시일자(RECU_FR_DD)를활용하여 발생률산출기간에해당하는명세서추출 ▶발생환자는 연구기간에 새로 발생한 환자들만 포함하기 때문에 연구기간 이전에 발생한 환자들의명세서는제거해야함 ▶추출된자료의수진자개인식별대체키(JID)변수를활용하여유병환자카운트 [그림 9]유병환자수계산프로그램(예시) /*●2017년에●‘J06’으로●진료받은●환자수●계산●*/ proc●sql;select●count(distinct●jid)●as●n_jid●
from●j06_2017_pre;● quit; /*●‘J06'으로●2017년에●새로●진료받은●환자의●명세서●추출●*/ proc●sql; create●table●j06_2017_inc●as select●mid,●jid,●sick_cd,●recu_fr_dd from●j06c● where●recu_fr_dd●between●'20170101'●and●'20171231'●and● ●●●●●●●●●●●jid●not●in(select●distinct●jid●
5. 맺음말
● ●유병환자수와발생환자수계산을위해서는먼저대상질환의기준범위를우선설정해야함 ▶대상질환의기준을주상병,제1부상병으로만하는경우는200테이블만,모든상병으로하는 경우는200테이블,400테이블을연계하여자료셋팅이필요함 ● ●유병환자수와발생환자수는연구기간전의발병여부에따라구분됨 ▶유병 환자수는 연구기간에 대상 질환의 진료기록이 있는 모든 환자수를 계산하고, 발생 환자수는이중연구기간전에진료기록이있는환자를제외하고계산함 ● ●본가이드에서는유병환자수와발생환자수의일반적인계산방법을소개했지만연구성격에 맞게필요변수와기간,범위등을고려하여계산하여야함 ▶추출된자료의수진자개인식별대체키(JID)변수를활용하여발생환자카운트 [그림 11]발생환자수계산프로그램(예시) /*●2017년●‘J06’이●새로●발생한●환자수●계산●*/ proc●sql;select●count(distinct●jid)●as●n_jid●
from●j06_2017_pre;● quit;