count matrix·normalization·batch
이 토픽을 마치면
count matrix에서 행·열·count의 의미를 확인하고 raw count와 normalized value를 구분할 수 있습니다. batch가 생물학적 조건과 섞였는지 확인하며, normalization이 모든 batch 문제를 해결한다는 해석을 피할 수 있습니다.
matrix의 한 칸은 무엇인가
오믹스 표에서 행이 feature이고 열이 sample인 경우가 많지만, 이 방향을 파일 이름만 보고 가정하지 않습니다. 한 칸의 값이 raw read count인지, 이미 변환된 abundance인지, 어떤 filtering을 거쳤는지 확인합니다. sample ID와 biological replicate·technical replicate의 관계도 schema에 기록합니다.
raw count와 normalized value
raw count는 데이터 생성·정량 과정에서 직접 집계된 값이며, normalized value는 library size나 다른 기준을 반영한 변환 결과일 수 있습니다. 두 값을 같은 열에 섞지 않고, 변환식·도구·버전·입력을 provenance에 남깁니다.
normalized 값은 시각화나 특정 비교에 유용할 수 있지만, 모든 모델의 입력으로 자동 사용할 수 있는 것은 아닙니다. count 기반 모델에는 모델이 기대하는 입력 척도를 확인해야 합니다.
batch를 설계와 함께 보기
batch는 측정일·장비·plate·처리 묶음처럼 공통 과정을 공유하는 단위입니다. batch와 biological condition이 완전히 겹치면 통계적으로 두 효과를 분리하기 어려울 수 있습니다. 사후에 보정 코드를 적용한다고 설계의 confounding이 자동으로 사라지지 않습니다.
sample_id | biological_condition | batch_id | replicate_id | value_type
S01 | A | B01 | R01 | raw_count이 표에서 먼저 확인할 것은 모델 함수가 아니라 각 조건이 여러 batch에 걸쳐 관측됐는지입니다.
연구 질문으로 돌아가 해석하기
정규화는 값을 비교 가능한 표현으로 바꾸기 위한 계산 단계입니다. 그것이 측정 편향, batch confounding, replicate 오류, biological 차이를 분리해 준다는 뜻은 아닙니다. 분석 문서에는 raw input, normalization, batch 처리, 최종 모델을 각각 기록합니다.
자주 생기는 실패
- normalized value를 raw count로 부르지 않습니다.
- TPM 같은 다른 척도를 count model 입력으로 자동 사용하지 않습니다.
- batch와 condition이 겹치는 설계를 코드 한 줄로 해결한다고 쓰지 않습니다.
- sample 수를 replicate 수와 혼동하지 않습니다.
핵심 정리
- matrix의 행·열·한 칸의 의미를 먼저 확인합니다.
- raw count와 normalized value는 입력 척도가 다릅니다.
- batch는 설계와 provenance에서 함께 점검합니다.
- normalization은 모든 편향을 제거하는 절차가 아닙니다.
다음 토픽으로
생존자료 blocker가 해소된 뒤 stat-022·023으로 연결하고, 다음 작성 가능 토픽은 PCA와 고차원 QC입니다.
참고 자료
- NCBI GEO: https://www.ncbi.nlm.nih.gov/geo/info/
- ENCODE citing guidance: https://www.encodeproject.org/help/citing-encode/
- Bioconductor OSTA experimental design: https://bioconductor.org/books/release/OSTA/pages/bkg-exp-design.html
본 편의 matrix schema와 설명은 BioStatPy가 독립적으로 작성했습니다.