경우가 없는 경우
close
프로필 배경
프로필 로고

경우가 없는 경우

  • 분류 전체보기 (20)
    • 공부 (16)
      • SAS (7)
      • Python (3)
      • Database (3)
      • ML, DL (1)
      • 통계학 (2)
    • 소설 (3)
    • 영화 (1)
  • 홈
  • 태그
  • 방명록

[SAS] TOT_MCNT (총 투여 일수/실시 횟수) 전처리

국민건강보험 DB에는 TOT_MCNT라는 변수가 있는데, 이 변수는 총 투여 일수 또는 총 실시 횟수를 나타낸다. 하지만 이 변수를 duration이나 period 등에 그대로 사용하기에는 문제가 있다고 생각을 하는 이유는, 입원 시작 일자는 알 수 있어도 종료 일자는 알 수 없고, 입원 시작 일자에서 총 투여 일수를 더해 보더라도 입원 기간 중간중간에 다른 CMN_KEY를 통해 새로운 청구가 생기는 등 이런저런 문제가 있기 때문이다. 어떤 청구가 우리가 원하는 질병 또는 행위에 대한 것인지를 명확하게 알 수 없다는 것이 큰 단점이라고 할 수 있겠다. (개인적 의견ㅎㅎ)​그래서 이번에 작성하는 글은, TOT_MCNT 변수가 1일마다 발생한 행위의 총 투여 일수라고 가정하고 이 변수를 사용해 행위의 dur..

  • format_list_bulleted 공부/SAS
  • · 2024. 11. 23.
  • textsms

[SAS] CCI (Charlson Comorbidity Index) 지수 계산

때때로 건강보험공단 데이터를 분석하다 보면 CCI (Charlson Comorbidity Index) 지수를 계산해야 할 때가 있다. 이걸 공단에서 붙여주는 경우도 있다고 하는데, 아닐 때도 있다고 해서 (확실하지 않음) 나는 교수님께 코드를 받아 데이터에 맞게 수정하고 계산했다.​아래는 표본코호트 DB에 적용할 수 있는 CCI 지수 계산 SAS 코드이다. ​CCI 지수는 관심 질환으로 진단을 받은 시점부터 1년 이전까지의 의료 이용 기록을 보는 것이 일반적이고, 주진단 및 부진단명에 나온 동반질환들을 확인한다. (참고자료: https://doi.org/10.4332/KJHPA.2016.26.1.71)​그래서 아래 코드는 분석을 원하는 진단의 최초 의료 이용 시점을 확인하고, 그로부터 1년 이전까지의 의..

  • format_list_bulleted 공부/SAS
  • · 2024. 11. 23.
  • textsms

[SAS] Hazard Ratio (HR) Forest Plot 그리기

아래는 SAS를 사용해 Hazard Ratio (HR) Forest Plot를 그리는 코드인데, 커스터마이징하기 힘드니 최후의 보루로 사용하도록 하자. (참고 자료: https://support.sas.com/resources/papers/proceedings10/195-2010.pdf)​참고로 SAS는 대부분의 커스터마이징이 매크로를 쓰는데, 공단은 컴퓨터가 네트워크를 지원하지 않아서 매크로도 쓰기 힘들다.DATA HAZARDS;INPUT COVARIATES$ HR LOWERCI UPPERCI;CARDS;/*순서대로 변수, HR, LOWERCI, UPPERCI 넣기*/;RUN;TITLE "Hazard Ratio Forest Plot For Cox PH Model";PROC SGPLOT DATA=HAZA..

  • format_list_bulleted 공부/SAS
  • · 2024. 11. 23.
  • textsms

[SAS] 생존분석 (Survival Analysis) - Cox Proportional Hazard Model

비례위험가정을 만족하는 변수들에 대해서는 Cox Proportional Hazard Model, 일명 Cox PH Model을 사용할 수 있다. 하지만 그렇지 않은 변수는 층화를 진행해야 하는데, 이러한 두 경우에 대한 코드를 소개한다.​아래에 있는 것은 모두 Multivariable (다변수) 분석이다. Univariate (단변량) 분석을 진행하고 싶을 경우 독립변수를 하나만 넣으면 된다.​​1. 비례위험가정을 만족하는 경우PROC PHREG DATA=MAIN_TABLE;CLASS SEX DM;MODEL SURVIVED_TIME*CENSORED(0) = AGE SEX DM /RL; /*CI 표시*/RUN;ODS GRAPHICS ON;PROC PHREG DATA=MAIN_TABLE PLOTS(OVERL..

  • format_list_bulleted 공부/SAS
  • · 2024. 11. 22.
  • textsms

[SAS] 생존분석 (Survival Analysis) - 다중공선성 및 비례위험가정, Kaplan-Meier Plot

1. 다중공선성다중공선성은 SAS에서 3가지 옵션을 통해 계산할 수 있다.주석에 적힌 다중공선성의 기준은 사람마다 다르게 받아들여지기 때문에 참고만 하자. PROC REG DATA=MAIN_TABLE;MODEL SURVIVED_TIME=AGE SEX DM / VIF; /*VIF, 기준 5 이상*/RUN;PROC REG DATA=MAIN_TABLE;MODEL SURVIVED_TIME=AGE SEX DM / TOL; /*TOL, 기준 0.2 이하*/RUN;PROC REG DATA=MAIN_TABLE;MODEL SURVIVED_TIME=AGE SEX DM / COLLIN; /*CI, 15 이상일 경우 의심*/RUN; ​2. 비례위험가정Cox Proportional Hazard Model을 생성하기 위해 선행되..

  • format_list_bulleted 공부/SAS
  • · 2024. 11. 22.
  • textsms

[SAS] 생존분석 (Survival Analysis) - 사망연계자료 JOIN 및 중도절단

아래 코드는 건강보험공단 DB에 사용하였던 코드를 표본코호트 DB에 맞게 변수명을 변형한 것으로, 실제로 적용하기에는 호환이 잘 안 될 수도 있으며 추후 (내가 다시) 참고하려고 작성하였으니 너무 믿지 마시길 바랍니다. (저는 제가 아직도 왜 전공자인지 의심이 됨ㅋㅋ)​코드에 나와 있는 추적관찰기간은 전부 제가 한 실제 분석과 관계 없는 가짜 데이터입니다. ​​1. 사망연계자료 JOIN하여 전처리 테이블 만들기PROC SQL;CREATE TABLE DEATH_TABLE ASSELECT A.*, B.DTH_YYYYMMFROM MAIN_DATA_TABLE AS AINNER JOIN NSC2_BND AS BON A.RN_INDI=B.RN_INDI;QUIT;PROC SQL;CREATE TABLE DEATH_TA..

  • format_list_bulleted 공부/SAS
  • · 2024. 11. 22.
  • textsms
  • navigate_before
  • 1
  • navigate_next
공지사항
  • 네이버 블로그와 동시에 운영하고 있습니다.
전체 카테고리
  • 분류 전체보기 (20)
    • 공부 (16)
      • SAS (7)
      • Python (3)
      • Database (3)
      • ML, DL (1)
      • 통계학 (2)
    • 소설 (3)
    • 영화 (1)
최근 글
인기 글
최근 댓글
링크
  • 네이버 블로그
태그
  • #SAS
  • #Cox
  • #티스토리챌린지
  • #hazardratio
  • #생존분석
  • #survival
  • #survival analysis
  • #버그픽스
  • #오블완
  • #analysis
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바