Major Study./Bioinformatics

logRank Survival 분석에서 그룹의 수와 pvalue

sosal 2016. 7. 2. 12:28
반응형

/*

 http://sosal.kr/
 * made by so_Sal
 */

 

 

Park, Sunho, et al. "An integrative somatic mutation analysis to identify pathways linked with survival outcomes across 19 cancer types." Bioinformatics 32.11 (2016): 1643-1651.

 

Bioinformatics 저널에 나온 figure 3번 결과를 보면서, Log-Rank p-value가 유의하게 나온 것을 보면서

이렇게 그룹이 많은데 log-rank test는 당연히 유의하게 나오는 것이 아닐까? 라는 생각을 해봤다.

 

 


 

 

 

이 그래프에 대한 설명은 다음과 같다.

Cancer-type-specific altered pathways across cancers correlate with survival outcomes. KM survival plots based on patient subgroups defined by consensus clustering using genes from the top three altered pathways for (a) kidney renal cell carcinoma (KIRC), (b) bladder urothelial carcinoma (BLCA), (c) head and neck squamous carcinoma (HNSC) and (d) skin cutaneous mel- anoma (SKCM)

 

유전자들을 Consensus clustering 한 결과, cluster 간의 survival이 유의하다, 즉 somatic mutation으로 찾은 pathway가 survival에 관련이 있다라고 주장하는 것 같다.

(논문을 자세하게 리뷰하진 않았다.)

 

 

Kaplan meier graph를 보면서 이렇게 그룹을 많이 나눠놓고, Log-rank를 그냥 써서, 각 그룹의 생존 차이가 유의한지만 보는 경우는 잘 없었던 것 같은데, 내가 통계적인 지식이 정말 없지만 그냥 랜덤하게 변수를 뽑아서 그룹에 따라서 p-value가 어떻게 달라지는지 양상을 보고싶었다.

 

 

We can therefore infer the optimal number of clusters by the K value having the lowest PAC.

 

 

nSample = 1000
TimeScope = 0:1000


for(nGroup in 2:5){
    pvalue <- c()
    for(i in 1:1000){
        Time <- sample( 0:1000, nSample, replace=T)
        Status <- sample( c("Alive","Dead"), nSample, replace=T)
        group <- sample( c(1:nGroup), nSample, replace=T)
        res <- survdiff( Surv(Time, Status=="Dead") ~ factor(group))
        pvalue[i] <- 1 - pchisq(res$chisq, 1)
    }
    print( paste0("nGroup:", nGroup, " mean: ", round(mean(pvalue),4), " sd: ", round(sd(pvalue),4) ) )
}

 

1000명을 랜덤하게 만들고, Survival 시간은 0~1000 으로 설정하였다.

sample 함수로 Time과 Status (Alive or Dead), 그리고 group을 랜덤하게 뽑았고

그것을 토대로 log-rank survival analysis를 실행했다.

 

 

 

- 결과

 

 

 Group     Mean of P-value SD

nGroup:2   mean: 0.5022     sd: 0.2886
nGroup:3   mean: 0.3009     sd: 0.2307
nGroup:4   mean: 0.1807     sd: 0.1818
nGroup:5   mean: 0.1085     sd: 0.1247
nGroup:6   mean: 0.0704     sd: 0.0935
nGroup:7   mean: 0.0493     sd: 0.0732
nGroup:8   mean: 0.0317     sd: 0.0544
nGroup:9   mean: 0.0219     sd: 0.039
nGroup:10 mean: 0.0143     sd: 0.0291

 

 

 

Mean of P-value를 Barplot으로 그려보았다.

 

사실상 group이 7개부터는 랜덤한 데이터도 Log-rank test 결과 pvalue가 유의하게 나온다.

7개의 그룹중에 생존의 차이가 없기가 더 힘들다는 뜻인가?

 

 

그래서 상단에 있는 figure 3번은 결과가 cancer type에 따라서 유의하게 잘 나오는 k값을 arbitrary하게 보여주는 것이 아닐까? 라는 생각을 해봤다.

 

supplementary data인데 K값이 낮을 때에는 pvalue가 별로 유의한 경향을 보이지 않는 것 같다.

 

 

 

 

supplementary 3에서는 10개의 cancer type에서, consensus-clustering k에 따른 kaplan meier 생존그래프가 나오지만, k=2값일 때 생존이 유의한 경우는 딱 하나였다.

 

논문의 지엽적인 일부분이지만, 과연 이 결과로 정말 "linked with survival outcomes across 19 cancer types" 라는 말을 쓸 수 있을까? 라는 생각이 든다.