Skip to content

BIOP02-74 fix: PAM50 소스 study_id 고정 + 정책 vs 실사용 불일치 발견 - #139

Merged
braveji18 merged 1 commit into
mainfrom
fix/BIOP02-74-jamie-pam50-source-reconcile
Aug 21, 2026
Merged

BIOP02-74 fix: PAM50 소스 study_id 고정 + 정책 vs 실사용 불일치 발견#139
braveji18 merged 1 commit into
mainfrom
fix/BIOP02-74-jamie-pam50-source-reconcile

Conversation

@JamieLyu

Copy link
Copy Markdown
Collaborator

BIOP02-74 — PAM50 소스 study_id 고정 + §10 정책 vs 실사용 대조

claim_level: descriptive(가설 검정 아님) · 결정 요청 대상: kkkim(data-owner)

배경

BIOP02-49 QC(comment 11064)가 "PAM50 대체 소스와 57.0%(514/902) 일치"를 보고했으나, 정확한 cBioPortal study_id가 레포에 미고정 상태였음(원 파일이
out-of-band로 제공돼 재현 불가). Paper A Methods draft(guide/paper_a_methods_data_draft.md)에 open item으로 남아 있던 것을 이어서 처리.

변경 내용

  1. study_id 고정: 대조 소스 = brca_tcga_pan_can_atlas_2018, SUBTYPE(PATIENT-level, BRCA_ 접두 값), 커버리지 981/1010(97.2%).
    agents/data/scripts/pam50_source_reconcile.py 신설 + 출력 agents/data/manifests/pam50_source_reconcile_biop02-74.json 커밋 — kkkim의 57.0% 수치를 정확한 소스로 재현.
  2. 원고 draft 서술 오류 정정: 제가 8/4에 쓴 draft가 "cBioPortal TCGA-BRCA PAM50 calls, lineage of Parker 2009"라고 적었는데, BIOP02-49 PROVENANCE.md(이미 main)를 다시 보니 실제로는 로컬에서 계산한 Parker 2009/genefu 값이지 cBioPortal 소스가 아니었음. 정정.
  3. 새로 발견한 쟁점 (핵심): split_policy_v0.md §10은 "PAM50 = cBioPortal 1순위, 커버리지 부족시만 genefu fallback"인데, 실측 커버리지가 97.2%로
    부족하지 않음. 그런데 manifest는 전체 코호트에 genefu를 1순위처럼 쓰고 있음 — 정책과 실사용 불일치.

mismatch 패턴 (참고, 판정 아님)

무작위가 아니라 문헌상 알려진 PAM50 구현 간 불안정 지점에 집중:

  • local=LumB ↔ cBio=LumA: 141명
  • local=Normal ↔ cBio=LumA: 101명
  • (그 외 상위 페어는 JSON 참조)

이는 어느 쪽이 "틀렸다"는 증거가 아니라 LumA/LumB 경계·Normal-like 콜의 알려진 구현 간 불안정성과 일치하는 패턴.

결정 요청 (data-owner, kkkim)

소스를 §10 문구대로 cBioPortal로 전환할지, 아니면 genefu를 실질 1순위로 쓰는 문서화된 이유가 있는지(예: cBioPortal 커브레이션이 특정 TCGA 재처리 배치보다 뒤처짐) 판단 부탁드립니다. 이 PR은 소스를 전환하지 않았습니다 — Paper A PAM50 헤드라인 전체에 영향을 주는 결정이라 data-owner 몫으로 남겨뒀습니다.

영향 범위

split(§D.4)에는 영향 없음 — split은 라벨 가용성과 무관하게 전체 patient set 위에 정의됨.

관련: Jira BIOP02-74, BIOP02-49(원 QC), split_policy_v0.md §7/§10

cBioPortal 대조 소스 study_id 고정: brca_tcga_pan_can_atlas_2018, SUBTYPE
(PATIENT-level), 커버리지 981/1010(97.2%) — BIOP02-49의 57%(514/902)
불일치를 정확한 소스로 재현(agents/data/scripts/pam50_source_reconcile.py,
출력 JSON 커밋).

원고 draft의 "cBioPortal TCGA-BRCA PAM50 lineage" 서술이 부정확했음을
정정 — 실제로는 로컬 Parker 2009/genefu 계산값(BIOP02-49 PROVENANCE.md,
이미 main에 있음)이며, split_policy_v0.md §10은 genefu를 "cBioPortal
커버리지 부족시 fallback"으로만 승인하는데 실측 커버리지가 97.2%로
"부족"이 아니다. 정책과 실사용이 어긋난다 — 어느 쪽을 정본으로 할지는
data-owner(kkkim) 결정 필요, 이 커밋은 소스 전환을 하지 않고 사실만
정리해 open item으로 명시.

mismatch 패턴(local=LumB vs cBio=LumA 141명, Normal vs LumA 101명)도
문헌상 알려진 LumA/LumB 경계·Normal-like 불안정성과 일치 — 무작위 오류
아님을 확인.

@kakyungkim kakyungkim left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kkkim(Leader) 승인 — Parker 계산본 유지·문서화 방향(BIOP02-74 결정 #11999 참조). 57% concordance 정량화 잘 됐습니다. Methods에 Parker 2009 인용 + concordance 한계 보고 + split_policy §10 문구 정합만 확정하면 종결. cBioPortal 전환은 전면 재실행 위험이라 안 합니다.

@braveji18
braveji18 merged commit 338aa82 into main Aug 21, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants