hello, every one! I am a newcomer. Recently, I try to use cBioportal to analyzie survival. For example, I want to find whether tumor sample expression of IL8,CXCR1,CXCR2 genes can infuence breast cancer patients prognosis. Select TCGA, Nature Communications 2016, mRNA microarray, z-score ± 2.00. Input IL8,CXCR1,CXCR2 gene list menu. The result show us that tumor sample expression of IL8,CXCR1,CXCR2 genes were stratified into 3 groups(upregulation, downregulation ,noalterlation). But the survival analysis is based on two groups (noalterlation,alterlation).The alterlation group should include upregulation and downregulation.If I want to compare upregulation group with noalterlation group, how shuould I do ？
Unfortunately, there is no way to do this in cBioPortal. cBioPortal will call patients with either up-regulation OR down-regulation "altered," while those with a z-score between -2 and 2 "non-altered." This of course makes no sense.
if you have some R skills a way to do that is to calculate the "ntile" per each of those genes (i.e. top vs. bottom quartile/tercile etc..) and then compare patients that have high vs. low expression.
for exemple (in pseudocode):
# take quantiles high and low gene <- expression levels of gene X g_high <- take top quartile g_low <- take low quartile # define a class for the patients with high/low expression class <- if expression of X is >= g_high <- 1 else if expression of X is <= g_low <- 2 else class <- 0 # keep only high and low, remove those in between ind_to_remove <- which class == 0 alive_dead <- if dead <- 1 else <- 0 # prepare your formula for analysis myAnalysis <- surv(OS[-ind_to_remove], alive_dead[-ind_to_remove]) ~ class[-ind_to_remove] # run logrank test s_fit <- survfit(myAnalysis) s_diff <- survdiff(myAnalysis) # and cox hazard model cox <- coxph(myAnalysis) # plot KM plot(s)
you can always keep those in between (i.e. class == 0), up to you what to do with them